Category Archives: Changelog

A meta-page category. Things that refer to internal changes on this website.

New text on the frontpage, and a cause for celebration

The text on the Ayeri website’s landing page (itself an anacronism these days?) with its evocation of strange, fictitious lands where the language is supposed to be spoken has long slightly bothered me, seeing that I haven’t come up with substantial world-building for this long-running conlanging project of mine so far. Thus, I have recently—and rather ad hoc—come up with a new text that is more plain about Ayeri. Just as with the old text, I’ve tried translating it into Ayeri to give a taste right off the bat.

Manisu ya Benung. Bukuno narānena Ayeri! Ang Ayeri narānas manisa (narāntiyanas), sinā le ringyang suyan berdayyena luga pericanjya-ikan. Eng da-lomasāra edanya yām ku-ibangas tiyo, siyā ang ming ajāy narāneri nay sungkoraneri narān. Eng kadāra eda-baloybenung nilanjyas si ang avancon macamley vehanena, linyeley tiyo palung naynay si ang tiyāy ling pericanjya misisānyam neprisānena nay valyanyam sinā tiyayang. Valyu pecamanas eda-baloyyena!

The text goes as follows. I hope it’s in line with the Grammar, since I’m feeling quite out of practice. A thing I noticed is that there’s no way to handle clauses that function as constituents (object clauses, adverbial clauses, etc.) in Ayeri in the same rather elegant and concise way you can do this with ing-participles in English (“[…] working out ever more details of which has served me as a creative outlet for playing with language and linguistics for many years”). I thus had to rephrase the translated text a bit.

  1. Manisu ya Benung. Bukuno narānena Ayeri!
    welcome LOC=Benung storage language-GEN Ayeri
    ‘Welcome to Benung. The Ayeri Language Resource!’
  2. Ang Ayeri narānas manisa (narāntiyanas), sinā le ringyang suyan berdayyena luga pericanjya-ikan.
    A.AN=Ayeri language-P.AN fictional conlang-P.AN REL.P.AN.GEN P.INAN.TOP=raise=1SG.A amount[TOP] detail-PL-GEN for year-PL-LOC=many
    ‘Ayeri is a fictional language (a conlang) whose amount of detail I have raised for many years.’
  3. Eng da-lomasāra edanya yām ku-ibangas tiyo, siyā ang ming ajāy narāneri nay sungkoraneri narān.
    A.INAN.TOP=such=serve-HAB-3SG.INAN this[TOP] 1SG.DAT as=field-P.AN creative REL.P.LOC A.AN.TOP=can=play-1SG.TOP language-INS and science-INS language
    ‘It has thus served me as a creative field where I can play with language and linguistics.’
  4. Eng kadāra eda-baloybenung nilanjyas si ang avancon macamley vehanena, linyeley tiyo palung naynay si ang tiyāy ling pericanjya misisānyam neprisānena nay valyanyam sinā tiyayang.
    A.INAN.TOP=gather-3SG.INAN this=site.web[TOP] thought-PL-P.AN REL A.AN.TOP=document=3PL.AN.N.TOP process-P.INAN construction-GEN thing-PL-P.INAN creative other and.also REL A.AN.TOP=make=1SG.TOP during year-PL-LOC realization-DAT theory-GEN and enjoyment-DAT REL.DAT.GEN create=1SG.A
    ‘This website gathers thoughts documenting the construction process, and also other creative things I made over the years for the realization of theory and the enjoyment of what I created.’
  5. Valyu pecamanas eda-baloyyena!
    enjoy-IMP browse.through-P.AN this=page-PL-GEN
    ‘Enjoy browsing through these pages!’

Unfortunately, WordPress’ WYSIWYG editor makes it rather impossible to properly align interlinear glosses in linguistic examples anymore, to my best knowledge. On the other hand, I suppose that this kind of markup is a very special need of very few people (insert Star Trek joke here).

In other news, you can also tentatively follow this blog on the Fediverse at @/blog@/ayeri.de now (remove the slashes after the @ signs), because I wanted to try out Matthias Pfefferle et al.’s cool new ActivityPub plugin (markup beyond basic HTML would likely be gone anyway if viewed through the likes of Mastodon, Firefish, Lemmy, or Kbin). There’ll also be great news about my Ph.D. endeavors coming up soon-ish, I hope. 😀 A blog post giving a glimpse into what I wrote my thesis about that’s hopefully accessible enough for other conlangers as well is already in the pipeline for this occasion.

Incidentally, Ayeri is celebrating its 20th birthday this December, and this realization has just completely caught me by surprise. 😅 Bavesangas mino, I suppose, and briyu-briyu! 🎉🥂

Last month I asked whether I should get a top level domain for this site here, since benung.nfshost.com has long seemed a bit unwieldy to me. Most people of the dozen who gave feedback spoke out of in favor of it. And there I went, after six years and some consideration, and registered ayeri.de. I hope that this is a lot more succinct now.

In spite of the German country code, contents here will continue to be mainly in English, since the conlanging community as I know it is international. Old links will continue to work, as I set the server to rewrite them; benung.nfshost.com also remains the canonical domain for DNS purposes (hat tip to kaleissin).

ADMIN: Some things improved

Screenshot of Twentythirteen
This website updated to a “responsive” theme
I decided to port my site to the Twentythirteen theme for WordPress the other day, and the result is what you can see here. I didn’t want to go with the old Twentyeleven anymore because that’s not suitable so much for mobile devices, which a lot of people use to access this site, according to my server logs. Besides reducing big tables to something more manageable for small screens (there are still some glitches here and there), I especially tried to clean up the dictionary search interface, so I hope it’s more straightforward now. Also, you can now list all entries by their first letter, print dictionary style, at the touch of a button.

  • I’ve also tried to retrofit some of the graphics to high resolutions now. I can’t and won’t do this for every image file on the site, though.

ADMIN: This site in mobile browsers

  • I permanently deactivated my Twitter account in January 2023. Links to the account below aren’t functional anymore.

I have a smart phone, too, now – an Android phone – and was curious for how this site looks like in a mobile browser recently:

See the message on Twitter.

The dictionary page as displayed on my phone
The dictionary page as displayed on my phone

The biggest problem at least on mobile Chrome seems to be that the submenus don’t work – in a non-mobile browser, you hover the cursor over a navigation-bar menu item and a submenu pops up in some cases. If on a touchscreen, you tap on an item in the navigation bar with your finger, instead of a submenu popping up and staying there for you to choose maybe an item from the submenu, the page reloads with the link behind the navigation-bar menu item you tapped on, except if you are quick enough to unfocus the link by slightly dragging your finger away to the side. This certainly isn’t optimal, especially since my server logs suggest that rather many visitors use their phone or tablet to access this site, so I think that I should accommodate those visitors.

WordPress is fortunately flexible enough that porting a site from one theme (currently a modification of Twentyeleven) to another isn’t too big of a deal, but it’s still work that I don’t really have the time for right now, what with the semester at university having just started again. I guess, for the time being, just keep in mind that I’m aware that this site isn’t really good to use on a phone and maybe, if you want to more seriously look around here, probably better do so with a non-mobile browser.

Of course, if you know any workable fix for the menu bar issue, let me know. My own googling wasn’t so successful in this regard, except that I found other people have the same problem and were told to simply use a different, more recent theme that’s explicitly marked as suitable for mobile browsers (the buzzword here being “responsive”).

ADMIN: Site layout and Dictionary reworked

As you can see, I’ve reworked the site layout. Actually, this started when I felt like generally reworking the dictionary front- and querying backend some two weeks ago.

Back when I designed the old layout of the site, I just made a hard copy of the theme my design was based on, unaware that it’s much easier and space-saving to simply create a child theme. I’ve done so now, hopefully giving you a still functional way to access this website, in spite of all the CSS styling bells and whistles I couldn’t resist playing with.

As for the dictionary, it’s always annoyed me a little that there were two subpages for searching – one for simple queries, one for more complex ones – that repeated more or less the same (terrible and messy) code also in two separate PHP files that would do the database requests. I’ve now condensed everything into just one file each, i.e. one page for the form presented to users and one file for querying the database. I’ve also rewritten the querying script from scratch, so I hope I didn’t break any functionality. Due to my lack in expertise on MySQL, I wasn’t yet able to make querying tags for dictionary entries possible. I may want to try and find out and add this function later, though. One thing that I managed to add easily, however, is suggesting existing, similar-sounding entries from the database if a search didn’t return any results. This is achieved with MySQL’s SOUNDEX( ) function, which has an anglocentric caveat, though:

This function, as currently implemented, is intended to work well with strings that are in the English language only. Strings in other languages may not produce reliable results.
— MySQL 5.6 Reference Manual

I think it still works OK, though. You can test this by searching, for example, for *tounce.

  • “SOUNDEX(str).” MySQL 5.6 Reference Manual. MySQL. Revision 33321. Oracle, 2012. Web. 1 Dec. 2012. ‹http://dev.mysql.com/
  • Search by tags is possible as well now after some more tinkering, but note that so far, only rather recent additions to the dictionary have been tagged. Since I’ve recently added a whole bunch of vulgarities, don’t be surprised if you get a whole lot of entries for naughty words.

ADMIN: Media Page and Advanced Search

Over the past weeks I’ve tweaked the “Media” page and the “Advanced Search” page of the dictionary a little. I hope that it’s clearer now that you can actually click on the headings on the left side so as to get the menu for that heading. Hovering over a heading turns its background gray, and the mouse pointer changes to the one used for links to suggest that this element is clickable. Continue reading ADMIN: Media Page and Advanced Search

ADMIN: New old page

I took lots of effort recently to shoehorn this site into WordPress, which replaces my old clumsy custom-built content management system. The contents of the site have been overhauled as well, most importantly the dictionary.

Granted, the tabular layout of the new dictionary may not be as pretty as the file-card records the database spat out earlier, however, this way, maintaining the code is much easier, as well as adjusting the output if fields in the database change. The advanced search of the dictionary now also offers a couple more options, e.g. searching with regular expressions. As the script that queries the dictionary database is now called dynamically by a jQuery function (Yes, you must have Javascript enabled in order to use the dictionary!), forms will not be empty anymore after the request is sent. The only thing the advanced search can’t handle so far is searching by multiple attributes of a word, that is, something along the lines of “Return all words that are 3rd person singular animate,” which would return a number of pronouns. At the time of writing this, building such a function with MySQL seems a little overkill, as you’d ideally do it with Temporary Tables or Views and I still need to read up on that. However, the advanced search feature of the old website couldn’t deal with this either.

The database behind the dictionary is now entirely managed offline on my own computer, where it is safe – hopefully – except for blunders caused by myself. I will occasionally synchronize it with the version that runs on my host’s server. As a means of security which I had overlooked before (shame on me!), the database that is on the web now is only readable and query strings are checked for stray apostrophes and inverted commas, as well as malicious keywords, such as “DROP”. As for the administration frontend, I was surprised how easy it was to construct it with Django only by abstraction from the tutorials on the Django website and with no previous knowledge of Python. No tedious handcrafting of HTML forms and PHP scripts to read and write data for hours on end, yay! Another invisible improvement is that whereas non-ASCII characters were stored as HTML entities (e.g. ā for ā) before, they are stored in plain Unicode format now, as I’ve finally found out why why why the heck Unicode would be stubbornly returned as just question marks and saved as weird things like Ä°, i.e. mistakenly iso-8859-1 encoded Unicode: I didn’t know you need to specify that the MySQL connection use utf-8. It took me 6 freaking years to find that out 😡

As the Daléian script as well as the vine-like script I devised years ago as an experiment are not actually used to write Ayeri, I’ve now removed them from this site. I might put them up again on a separate subpage, though. I’ve also rewritten the Alphabet page almost completely. Also, no inconsistently handwritten graphics there anymore. Yes, there is a font, however it does not yet work as I’d like it to because OpenType is extremely unfriendly towards custom alphabets that are not ciphers of existing alphabets, so I had to use a graphics program to get the diacritics over the consonant letters. I will not yet make a public release of it. Kudos to you if you manage to decipher the writing in the header image 🙂

The archive on the Media page now contains all years on the same page for your enjoyment. For fun, you may want to compare something very old with something very recent…

Another new thing I’ve included is a blog category on “Grammar musings”. There I will put entries that are about my latest thoughts on Ayeri grammar. So far I’ve only posted them on the ZBB, but posting them here will hopefully give you some insight into the process that is behind conlanging. This category will probably not be updated too often, though, as the language is now in a rather stable state.