Do you know conlang software tools?

Conworlds and conlangs
User avatar
Xwtek
Posts: 720
Joined: Mon Sep 24, 2018 3:35 am

Do you know conlang software tools?

Post by Xwtek »

For saving grammar, vocabulary, etc.
IPA of my name: [xʷtɛ̀k]

Favourite morphology: Polysynthetic, Ablaut
Favourite character archetype: Shounen hero
User avatar
JT the Ninja
Posts: 34
Joined: Thu Oct 11, 2018 3:29 pm
Contact:

Re: Do you know conlang software tools?

Post by JT the Ninja »

I just use Excel or Google Sheets, honestly.
Peace,
JT
User avatar
mèþru
Posts: 1196
Joined: Sun Jul 08, 2018 6:22 am
Location: suburbs of Mrin
Contact:

Re: Do you know conlang software tools?

Post by mèþru »

Google Docs and OpenOffice
ìtsanso, God In The Mountain, may our names inspire the deepest feelings of fear in urkos and all his ilk, for we have saved another man from his lies! I welcome back to the feast hall kal, who will never gamble again! May the eleven gods bless him!
kårroť
Kuchigakatai
Posts: 1307
Joined: Mon Jul 09, 2018 4:19 pm

Re: Do you know conlang software tools?

Post by Kuchigakatai »

Grammar

For grammar, I just use plain .txt files, using a simple programming editor like gedit (Linux) or Notepad++ (Windows). (The default Notepad on Windows is bad for your health. It's very finicky with line-endings.)

Software like LibreOffice Writer (the true successor of OpenOffice), Microsoft Office Word and Google Docs provide you with things like tables and bolding and italics and can generate PDFs. But I don't care about any of that, so I just align things with spaces using a monospace font, and call it a day.


Dictionaries

Dictionaries are much trickier. You could write a print-like dictionary as a .txt file or in LibreOffice Writer, etc., but then searching a word can become difficult if the dictionary gets large. You can also try Microsoft Office Excel, LibreOffice Calc (even if it's disappointingly slow) or Google Sheets. This *is* good enough for many people because conlangers typically don't write detailed entries, preferring to half-remember in their mind how to use words.

The advantage of a spreadsheet over a text document is that, although you'll still need to scroll to find a specific word, you'll be able to get all words under a category (especially wordclass) by sorting the whole table by a column. Want all prepositions? Sort it by the wordclass column. However, if you have idioms, multiple definitions, syntactical information, and maybe examples or usage notes, the spreadsheets become quite ugly to work with. You either repeat a lot of data in cells, or structure it in an irregular way.

There are several applications in existence for managing dictionaries. Desktop applications like SIL's Fieldworks Language Explorer (FLEx) or DraqueT's PolyGlot, websites like ConWorkShop or Anthologica. I'm not that fond of them though. Last time I tried using SIL's FLEx (3 years ago), you had to make a lot of clicks to enter data. ConWorkShop is rather stringent with certain requirements, like linking your words to a database of meanings that they have, and also has a level of complexity I find annoying. Anthologica is much simpler, and I'd like it if only its code and server weren't soooo slowwww (it's common for a page to take 30 seconds to load). I haven't tried PolyGlot.

https://www.sil.org/dictionaries-lexico ... tion-tools
https://draquet.github.io/PolyGlot/
https://conworkshop.com/
http://anthologi.ca/

In the end I ended up writing my own little program for the command line.
Kuchigakatai
Posts: 1307
Joined: Mon Jul 09, 2018 4:19 pm

Re: Do you know conlang software tools?

Post by Kuchigakatai »

P.S. I should add that you can improve on searching a word in a document file by marking data with special symbols. Like this:

{braddu} $n. @oar
{bradgi} $vt. @confuse sb, @mislead; @mistake sth for sth

The trick is that you don't use {} $ @ for anything other than headwords, wordclasses and translation equivalents.

If you want to search for headwords that begin in brad-, you could type Ctrl+F in an editor and type {brad
If you want to search for headwords that end in -dgi, you could type Ctrl+F in an editor and type dgi}
If you want to search for all transitive verbs, you could type Ctrl+F in an editor and type $vt
Etc.
storyteller232
Posts: 44
Joined: Fri Jul 13, 2018 6:35 pm
Location: Glastonbury, CT
Contact:

Re: Do you know conlang software tools?

Post by storyteller232 »

I havent gotten a conlang to the point yet where a software is needed. I have a little notebook i use to keep my notes and will plan to transfer them to the computer eventually. Though i am not nearly to that point yet, i am playing around with two softwares based on recommendations from a facebook group. Can't give my own review yet but here are the ones i am considering.

Polyglot - https://draquet.github.io/PolyGlot/ - offline program, kinda reminds me of Scrivener in that you build the different portions and then compiles it into a singlw .pdf generates quizes, declension/conjugation tables

Conworkshop - https://conworkshop.com/ - web-based, havent explored it much. Heard it is hard to figure out but has a ton of features once you learn your way around like the ability to create online courses for your language.
Curlyjimsam
Posts: 99
Joined: Mon Jul 30, 2018 8:21 am

Re: Do you know conlang software tools?

Post by Curlyjimsam »

JT the Ninja wrote: Sat Oct 13, 2018 7:18 am I just use Excel or Google Sheets, honestly.
Yeah, I used to use LexiquePro as dedicated dictionary software, but now I just do them in Excel. Grammars I do in Word.
The Man in the Blackened House, a conworld-based serialised web-novel.
User avatar
Xwtek
Posts: 720
Joined: Mon Sep 24, 2018 3:35 am

Re: Do you know conlang software tools?

Post by Xwtek »

Curlyjimsam wrote: Sat Oct 13, 2018 3:30 pm
JT the Ninja wrote: Sat Oct 13, 2018 7:18 am I just use Excel or Google Sheets, honestly.
Yeah, I used to use LexiquePro as dedicated dictionary software, but now I just do them in Excel. Grammars I do in Word.
Why about LexiquePro?

Also do you know application to create a conmap?
IPA of my name: [xʷtɛ̀k]

Favourite morphology: Polysynthetic, Ablaut
Favourite character archetype: Shounen hero
User avatar
Xwtek
Posts: 720
Joined: Mon Sep 24, 2018 3:35 am

Re: Do you know conlang software tools?

Post by Xwtek »

storyteller232 wrote: Sat Oct 13, 2018 2:19 pm Conworkshop - https://conworkshop.com/ - web-based, havent explored it much. Heard it is hard to figure out but has a ton of features once you learn your way around like the ability to create online courses for your language.
Do you know how to create more than one conlang there?
IPA of my name: [xʷtɛ̀k]

Favourite morphology: Polysynthetic, Ablaut
Favourite character archetype: Shounen hero
Zju
Posts: 912
Joined: Fri Aug 03, 2018 4:05 pm

Re: Do you know conlang software tools?

Post by Zju »

Having gotten around to it yet, but this is the approximate structure I plan to use for most or all dictionaries in the future:

Code: Select all

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET NAMES utf8 */;
/*!50503 SET NAMES utf8mb4 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;


-- Dumping database structure for clgs
CREATE DATABASE IF NOT EXISTS `clgs` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin */;
USE `clgs`;

-- Dumping structure for table clgs.conlang
CREATE TABLE IF NOT EXISTS `conlang` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) COLLATE utf8_bin NOT NULL,
  `time` int(11) DEFAULT NULL,
  `precursor` int(11) DEFAULT NULL,
  `setting` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `FK_conlang_setting` (`setting`),
  KEY `FK_conlang_conlang` (`precursor`),
  CONSTRAINT `FK_conlang_conlang` FOREIGN KEY (`precursor`) REFERENCES `conlang` (`id`) ON UPDATE CASCADE,
  CONSTRAINT `FK_conlang_setting` FOREIGN KEY (`setting`) REFERENCES `setting` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

-- Dumping data for table clgs.conlang: ~0 rows (approximately)
/*!40000 ALTER TABLE `conlang` DISABLE KEYS */;
/*!40000 ALTER TABLE `conlang` ENABLE KEYS */;

-- Dumping structure for table clgs.entry
CREATE TABLE IF NOT EXISTS `entry` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `conlang` int(11) NOT NULL,
  `entry` varchar(150) COLLATE utf8_bin NOT NULL,
  `ipa` varchar(150) COLLATE utf8_bin DEFAULT NULL,
  `meaning` varchar(150) COLLATE utf8_bin DEFAULT NULL,
  `pos` int(11) DEFAULT NULL,
  `inflection` int(11) DEFAULT NULL,
  `irregularities` json DEFAULT NULL,
  `more` json DEFAULT NULL,
  `etymology` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `FK_entry_conlang` (`conlang`),
  KEY `FK_entry_entry` (`etymology`),
  CONSTRAINT `FK_entry_conlang` FOREIGN KEY (`conlang`) REFERENCES `conlang` (`id`) ON UPDATE CASCADE,
  CONSTRAINT `FK_entry_entry` FOREIGN KEY (`etymology`) REFERENCES `entry` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

-- Dumping data for table clgs.entry: ~0 rows (approximately)
/*!40000 ALTER TABLE `entry` DISABLE KEYS */;
/*!40000 ALTER TABLE `entry` ENABLE KEYS */;

-- Dumping structure for table clgs.setting
CREATE TABLE IF NOT EXISTS `setting` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) COLLATE utf8_bin NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

-- Dumping data for table clgs.setting: ~0 rows (approximately)
/*!40000 ALTER TABLE `setting` DISABLE KEYS */;
/*!40000 ALTER TABLE `setting` ENABLE KEYS */;

/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */;
/*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
Once you set up the DB properly, viewing any data and combination thereof is as easy as writing a request.
/j/ <j>

Ɂaləɂahina asəkipaɂə ileku omkiroro salka.
Loɂ ɂerleku asəɂulŋusikraɂə seləɂahina əɂətlahɂun əiŋɂiɂŋa.
Hərlaɂ. Hərlaɂ. Hərlaɂ. Hərlaɂ. Hərlaɂ. Hərlaɂ. Hərlaɂ.
storyteller232
Posts: 44
Joined: Fri Jul 13, 2018 6:35 pm
Location: Glastonbury, CT
Contact:

Re: Do you know conlang software tools?

Post by storyteller232 »

Akangka wrote: Sun Oct 14, 2018 3:02 amDo you know how to create more than one conlang there?
You click on the profile menu and on the page that loads there is a new language link
Frislander
Posts: 431
Joined: Fri Jul 13, 2018 8:40 am

Re: Do you know conlang software tools?

Post by Frislander »

I use TeX when it comes to conlangs I actually start documenting on m laptop because it means I can make everything look pretty.
User avatar
Xwtek
Posts: 720
Joined: Mon Sep 24, 2018 3:35 am

Re: Do you know conlang software tools?

Post by Xwtek »

Zju wrote: Sun Oct 14, 2018 3:52 am Having gotten around to it yet, but this is the approximate structure I plan to use for most or all dictionaries in the future:

Code: Select all

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET NAMES utf8 */;
/*!50503 SET NAMES utf8mb4 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;


-- Dumping database structure for clgs
CREATE DATABASE IF NOT EXISTS `clgs` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin */;
USE `clgs`;

-- Dumping structure for table clgs.conlang
CREATE TABLE IF NOT EXISTS `conlang` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) COLLATE utf8_bin NOT NULL,
  `time` int(11) DEFAULT NULL,
  `precursor` int(11) DEFAULT NULL,
  `setting` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `FK_conlang_setting` (`setting`),
  KEY `FK_conlang_conlang` (`precursor`),
  CONSTRAINT `FK_conlang_conlang` FOREIGN KEY (`precursor`) REFERENCES `conlang` (`id`) ON UPDATE CASCADE,
  CONSTRAINT `FK_conlang_setting` FOREIGN KEY (`setting`) REFERENCES `setting` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

-- Dumping data for table clgs.conlang: ~0 rows (approximately)
/*!40000 ALTER TABLE `conlang` DISABLE KEYS */;
/*!40000 ALTER TABLE `conlang` ENABLE KEYS */;

-- Dumping structure for table clgs.entry
CREATE TABLE IF NOT EXISTS `entry` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `conlang` int(11) NOT NULL,
  `entry` varchar(150) COLLATE utf8_bin NOT NULL,
  `ipa` varchar(150) COLLATE utf8_bin DEFAULT NULL,
  `meaning` varchar(150) COLLATE utf8_bin DEFAULT NULL,
  `pos` int(11) DEFAULT NULL,
  `inflection` int(11) DEFAULT NULL,
  `irregularities` json DEFAULT NULL,
  `more` json DEFAULT NULL,
  `etymology` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `FK_entry_conlang` (`conlang`),
  KEY `FK_entry_entry` (`etymology`),
  CONSTRAINT `FK_entry_conlang` FOREIGN KEY (`conlang`) REFERENCES `conlang` (`id`) ON UPDATE CASCADE,
  CONSTRAINT `FK_entry_entry` FOREIGN KEY (`etymology`) REFERENCES `entry` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

-- Dumping data for table clgs.entry: ~0 rows (approximately)
/*!40000 ALTER TABLE `entry` DISABLE KEYS */;
/*!40000 ALTER TABLE `entry` ENABLE KEYS */;

-- Dumping structure for table clgs.setting
CREATE TABLE IF NOT EXISTS `setting` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) COLLATE utf8_bin NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

-- Dumping data for table clgs.setting: ~0 rows (approximately)
/*!40000 ALTER TABLE `setting` DISABLE KEYS */;
/*!40000 ALTER TABLE `setting` ENABLE KEYS */;

/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */;
/*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
Once you set up the DB properly, viewing any data and combination thereof is as easy as writing a request.
I know DB (I am currently enrolled at a university for Informatics Engineering), and I actually thought of that. But is that just overkill? First, to add example (especially relational one), you have to add to separate "example" table. It is practically impossible to read the example except if you do a query. You then basically creating your own conlanging software just to improve on that.
IPA of my name: [xʷtɛ̀k]

Favourite morphology: Polysynthetic, Ablaut
Favourite character archetype: Shounen hero
Zju
Posts: 912
Joined: Fri Aug 03, 2018 4:05 pm

Re: Do you know conlang software tools?

Post by Zju »

Akangka wrote: Sun Oct 14, 2018 8:02 amFirst, to add example (especially relational one), you have to add to separate "example" table. It is practically impossible to read the example except if you do a query.
Over some certain lexicon size I'd prefer to type in select * from examples where word like 'lorem'; and have the DB do all the work for me rather than searching manually for all examples of that word's usage. And I can save the more frequently used queries as stored procedures.
Akangka wrote: Sun Oct 14, 2018 8:02 am You then basically creating your own conlanging software just to improve on that.
Maybe that's the goal.
/j/ <j>

Ɂaləɂahina asəkipaɂə ileku omkiroro salka.
Loɂ ɂerleku asəɂulŋusikraɂə seləɂahina əɂətlahɂun əiŋɂiɂŋa.
Hərlaɂ. Hərlaɂ. Hərlaɂ. Hərlaɂ. Hərlaɂ. Hərlaɂ. Hərlaɂ.
User avatar
Xwtek
Posts: 720
Joined: Mon Sep 24, 2018 3:35 am

Re: Do you know conlang software tools?

Post by Xwtek »

Zju wrote: Sun Oct 14, 2018 8:28 am
Akangka wrote: Sun Oct 14, 2018 8:02 am You then basically creating your own conlanging software just to improve on that.
Maybe that's the goal.
Then you won't bother creating a database for that. It is much harder to distribute a database. Instead, you use XML. You query it using XQuery.
IPA of my name: [xʷtɛ̀k]

Favourite morphology: Polysynthetic, Ablaut
Favourite character archetype: Shounen hero
Curlyjimsam
Posts: 99
Joined: Mon Jul 30, 2018 8:21 am

Re: Do you know conlang software tools?

Post by Curlyjimsam »

Akangka wrote: Sun Oct 14, 2018 2:20 am
Curlyjimsam wrote: Sat Oct 13, 2018 3:30 pm
JT the Ninja wrote: Sat Oct 13, 2018 7:18 am I just use Excel or Google Sheets, honestly.
Yeah, I used to use LexiquePro as dedicated dictionary software, but now I just do them in Excel. Grammars I do in Word.
Why about LexiquePro?

Also do you know application to create a conmap?
LexiquePro was pretty good, but in the end I just found Excel more versatile.

You should be able to make maps on any good image-manipulation program; I use GIMP. Zompist, wbo is better at maps than I, has a tutorial on his website. There's something to be said for pencil and paper in mapmaking though. And doing it well always takes time.
The Man in the Blackened House, a conworld-based serialised web-novel.
Kuchigakatai
Posts: 1307
Joined: Mon Jul 09, 2018 4:19 pm

Re: Do you know conlang software tools?

Post by Kuchigakatai »

Akangka wrote: Sun Oct 14, 2018 8:51 am
Zju wrote: Sun Oct 14, 2018 8:28 am
Akangka wrote: Sun Oct 14, 2018 8:02 am You then basically creating your own conlanging software just to improve on that.
Maybe that's the goal.
Then you won't bother creating a database for that. It is much harder to distribute a database. Instead, you use XML. You query it using XQuery.
I don't see how XML is much better. SQLite and Microsoft Access use a single file you can easily distribute. With MySQL, you can share the SQL dump.
User avatar
Zaarin
Posts: 392
Joined: Mon Jul 09, 2018 10:59 am
Location: Terok Nor

Re: Do you know conlang software tools?

Post by Zaarin »

I use Word for both grammars and lexicons, but I'd like a better solution for lexicons. I'd love to have a program that supports metadata and makes it more convenient to list out all forms of a word (which quickly becomes too cumbersome in Word). Being able to sort words by etymology or semantic category would be a great boon.
But if of ships I now should sing, what ship would come to me?
What ship would bear me ever back across so wide a Sea?
Kuchigakatai
Posts: 1307
Joined: Mon Jul 09, 2018 4:19 pm

Re: Do you know conlang software tools?

Post by Kuchigakatai »

Zaarin wrote: Sun Oct 14, 2018 11:54 amBeing able to sort words by etymology or semantic category would be a great boon.
What do you mean by "sort words by etymology"?
User avatar
Zaarin
Posts: 392
Joined: Mon Jul 09, 2018 10:59 am
Location: Terok Nor

Re: Do you know conlang software tools?

Post by Zaarin »

Ser wrote: Sun Oct 14, 2018 11:59 am
Zaarin wrote: Sun Oct 14, 2018 11:54 amBeing able to sort words by etymology or semantic category would be a great boon.
What do you mean by "sort words by etymology"?
I.e., sorting by source language, so native vocabulary versus loanwords from Language X, from Language Y, etc. Also versus neologisms. I color code my vocabulary, but if you have a lot of donor languages that becomes tedious...
But if of ships I now should sing, what ship would come to me?
What ship would bear me ever back across so wide a Sea?
Post Reply