Извинявай за закъснелия отговор, но междувременно излезе още една курсова задача за писане по спешност.
И при нея имаше интересен момент. Няма да казвам дисциплината, защото опасявам се, че е толкова специфична, че веднага ще лъсне ВУЗ-а€1.
Там интересното е, че им преподава асистентка. Съответно е качила лекциите си в системата на ВУЗ-а. За да ви е по-ясно, не е, но много прилича на Moodle, като има и интеграция с Office365 и Sharepoint, но там още не съм влизал.
Сега не знам това пълните лекции ли са. Виждат ми се кратки и разпиляни. Всяка лекция е 6-7 страници. В тях се появяват неща които не са по лекцията. В същото време се съдържат десетки понятия, които никъде не са обяснени. Това е дисциплина тип „Увод в…“ (101, както му казват на запад) и не е приемливо.
И накрая като се поразрових, се оказа, че тези лекции не са никакви лекции, а компилация от изрезки от книгите на доайена на девойчето.
Цялата мара втасала, ами под всяка такава чорба, имаше червен надпис за copyright, който ме уведомяваше, че не мога да го разпространявам. Съгласен съм. Ако аз направя подобен буламач, не бих си сложил даже името под него, камо ли да го разпространявам. Обаче това сериозно ме вбеси. Затова намерих подходящо място в заключението на курсовата работа и вмъкнах:
Нима бихме разбрали концепцията за праводържие (copyright), ако преди това не бяхме научили за закона от 1557 год. на Кралица Мери \Romannum{1}-ва? Невъзможно би било!
Ай сиктир!
Ник Ангелов скоро не се е мяркал наоколо, но ми дойде
дюшеш. Много бири дължа и на този човек. Въобще, ако трябва да връщам бири на всеки дето му дължа много, няма да ми стигне живота. Как успях да се събера с толкова прекрасни хора като вас, направо не мога да си го представя.
Не зная, с какви хора с сблъскваш всеки ден, Гога, но аз не съм от тези, които съдят.
Чудесно казано, но не е така. Всички съдим. А Христос в прав текст ни казва, не съдете, за да не бъдете съдени.
Изпитвал съм верността на този закон десетки пъти на гърба си. И пак продължавам да го правя. Пак раздавам оценки. Ето например в последното си мнение нарекох непознат алкохолик, а съгражданите си описах като глупци. Това си е скрита агресивност.
И аз като теб се старая да не го правя, но накрая винаги се получава така, че го правя.
На мен изобщо не би ми мигнало окото, да напиша работата на сина си.
Правил съм го многократно и за двете си деца. Но да речем беше в средното, пък беше пандемия, странни времена. Сега леко ме е срам. Аз и той сме различни хора с различни виждания. Те няма как да не прозират през писаното и говоримо слово.
Преди се успокоявах, че трябва да помогна на децата да избутат училище, сега, че човека е първокурсник, а всички първокурсници са неориенирани.
Първо, ще му обясня, как се планира и структурира написването на такъв труд, след това ще му покажа методите са събиране и систематизирането на нужната информация, на какво трябва да се обърне внимание, какво би било излишно, как да не се впускаме в прекалено много обяснения, а да се придържаме стриктно към плана да не излизаме извън структурата на труда. Накратко, ще гледам да го науча на нещо покрай всичко това.
В следващото си мнение надълго, широко и интересно говориш за това. Но аз не мога да науча сина си на тези неща, защото е видно, че и аз съм дървен философ, и аз летя в облаците, и аз съм графоман. Аз също не успявам да сложа мислите си под контрол.
Та по документа. Не бих издребнявал за пропуснати букви, съюзи или за пунктуация.
Видях част от грешките си и някои успях да пооправя. Бързах адски много, защото срока беше до първи, а аз сколасах да предам на шести. Но я приеха.
Лично аз страшно много се дразня на грешки. Висше образование е това, не трябва да има такива неща. Каквото такова, вече няма, какво да направя.
Щях да направя забележка за това, че труда, който си написал е непълен, че примерите са малко и разни други подобни.
Вярно е. Трябваше да има трети раздел, където стъпка по стъпка да изпълня самото задание. Имаше няколко страници изисквания и аз даже не всички от тях спазих.
Но просто не остана място и време. Водих си нахвърляни бележки за този раздел. Сега ще употребя някои от тях в отговора си към теб. Те не влязоха в реферата, а вероятно нямаше да влязат в този вид и не е опасно да ги пускам публично.
Но, това беше, преди да се заинтересовам, какво е това реферат. Защото просто не знаех. Е, сега зная и дори бих казал, че може и да си попрекалил. Двадесет и една страници не е кратко представяне. Но и не виждам, как би могло да е с по-малко, защото LATEX наистина е огромно и сложно нещо.
Аз даже не одрасках повърхността. Толкова много изрязах, че в този си вид почти няма практическа стойност. Но реално не са двадесет и една страници. Има много празни пространства. В обикновен текст щяха да са може би, малко над десет. Но то това е една от силите на Латекс — прави нещата красиви. А когато ползваш професионален шаблон, стават главозамайващи.
Може би можеше да споменеш за основното предимство на подобни издателски системи или изобщо подобни методи за създаване на документи - възможността за автоматизация. Защото в днешно време генерирането на съдържание все повече се предава в ръцете на автоматизирани системи или скриптове или дори ИИ. А този процес ще се задълбочава.
На теория е така, на практика не е. Латекс представлява поредица от препроцесори свързани по между си. По такъв начин е направен. Една от последиците е, че компилацията е бавен процес. Латекс е създаван деветдесетте с мисъл за осемдесетте и тогава нещата са седели по друг начин. Трябвало е да се пестят ресурси. Бързината на изпълнение не е била приоритет.
Днес с LuaTeX има потенциал нещата кардинално да се променят и може би вече се променят, но ще трябва още време. Натрупванията са огромни.
Освен това да създадеш Латекс с код не е тривиално. Но пък е лесно готови шаблони да се запълват. Това е начина, по който работеше п4п до версия пет, когато стана обектен език. То това може да е постижимо и с обекти, но не знам някои писал ли е подобни класове.
И тук се показва силата на М$. Те са си написали безкрай неща, които хвърлят бинарни петна насам-натам. И така авто-магически се съдават doc и xls. Никой не знае, какво става. Ако се потроши, не може да го оправи. Но всичко е бързо и лесно, защото М$ са излели едни много кинти за много готов код, който да върши всичко. И понеже потребителската им маса е необятна и от хора, които реално плащат, та и тези масиви от код са добре поддържани и проверени в битка.
Също така да споменеш като футер, какво си използвал за написването на реферата. MS World, нещо линукско или дори LATEX.
Всъщност съм го написал в реферата. Не съм го писал на моята машина, защото си имам хардуерни проблеми и тя се самоизключва на случаен принцип през няколко минути, ако съм късметлия и до няколко часа. Мисля, че проблема е във вентилатора или връзката с датчика, но на този модел е почти невъзможна подмяната.
На практика всяка дистрибуция съдържа TeXLive в себе си. Досега не съм попадал на нещо да ми потрябва и там да го няма. На ГНУ/Линукс ползвам Емакс, който може да се настрои да е ужасно добър за Латекс. Но в хранилищата на големите дистрибуции (твоя Арх безспорно е такава, всъщност е най-голямата) има поне още пет или шест, специализирани редактора, всеки от които се справя доста добре. Едното си беше направо IDE. Има и редактори „на линия“, които включват още повече магии. Няма да е рядко в Github да срещнеш някой шаблон и автора да ти заяви в прочитаемото: Аз това го направих за ей тази услуга, там гарантирам, че работи безпроблемно.
Има TeXLive за Шиндош и даже съм дал връзка, как един китаец го е направил портативен.
Но като цяло е мъничко повече занимавка. Една от най-старите дистрибуции (най-старата жива) за тази ОС е MikTeX. Днес я има и за другите две платформи. Нейното предимство е, че е автоматизирала, каквото е успяла. Например в градения в нея редактор (TeXWorks, средна хубост) пишеш \usepackage{bla-bla} и като натиснеш клавишната комбинация или копченцето в лентата за транслиране до PDF и автоматично ти сваля и инсталира този пакет, ако го нямаш. Предполагам от CTAN (мрежа с пълна колекция от архиви на Текс се превежда) го сваля, не съм проверявал. CTAN го разглеждай като нещо подобно на pip. Разбира се pip е далеч по-нов и по-удобен за ползване.
Това ползвах на 10, с каквото е машината, дето писах.
=*=
Сега предимството е, че наистина не ти трябват много команди, за да пишеш Латекс на ръка. Латекс е сложен, но само под повърхността, където почти не ти трябва да се занимаваш. А, ако почнеш да се занимаваш, че видиш, че всъщност дори там е просто.
Има едно изключение. Това е PGF/TikZ. Това нещо само документацията му е 900 стр. Защо би го ползвал. Ами защото, ако ще слагаш графични красоти по документа (не просто да вкарваш изображения в jpg, png, pdf с \includegraphics), то ще се наложи. Има няколко подхода към графиката в Латекс, но този е най-нов, най-мощен и най-документиран. Но и тук има добра новина. В повечето случаи няма да ти се налага да пишеш код на tikz. В Интернет има тонове от него. Намираш си го, пляскаш си го в документа и само си го ползваш. На мен досега не ми се е налагало да го пиша.
=*=
Първия проблем, който трябва да реши всеки, който пише Латекс е какъв шаблон да използва. Повечето шаблони са лесни за ползване. Сваляш съдържанието и мажеш вътре. Обаче някои имат пипкав и често недокументиран процес на инсталация или поне има много мотики за настъпване.
От къде да си вземеш шаблон. Има няколко места, като най-предпочитано е Overleaf. Обаче аз лично предпочитам Гитхъб.
Има няколко причини за това. Той например е социална мрежа, което значи, че има система за оценяване (ха-ха, в началото говорехме за това). Освен това лесно се вижда броя на потребителите и допринеслите за шаблона. И не на последно място има етикети. Например:
https://github.com/topics/latex-templateМоже да е само latex за най-генерално представяне или за нещо конктетно, като например:
https://github.com/topics/thesis-templatehttps://github.com/topics/latex-thesis-templateНяма, какво да си кривим нещата. Най-новите, модерни и поддържани неща са в Гитхъб. Не, че няма и талаш. В Гитхъб има почти всичко.
Ще забележиш, че огромна част са китайски разработки. Лично аз бих ти казал да страниш от тях. Simplytranslate си работи, а от няколко дни вградиха някакво нещо в Лисока дето уж не подслушва и работи локално, но причината е в самите китайци.
Те правят нещата сложно. Много сложно.
По този въпрос, написах следното нещо:
По начало имах намерение да използвам шаблон на някой от китайските институти в чест на това, че основно те развиват общността на потребление на тази технология.
Но това не е практично решение. От една страна те са различни културно от западните страни и стила на шаблоните им не отговаря на западните стандарти.
Има и друга особеност, която отново можем да наречем културна. Опосредствано от факта, че КНР се намира в имперска надпревара, то подтиква своите кадри да надскачат стандартното поведение на съпоставими им колеги от други места по света. В светлината на LaTeX това се изразява в излишно усложняване на шаблоните им.
Един малък пример. Ако в шаблона на Кеймбрич или кой да е друг, заглавната страница е просто нещо, което добавяме в началото, няма да е изненада същото в китайски образец да е генерирано чрез нещо, което силно наподобява процедурен код в класа на документа (cls на \documentclass) и далеч няма да е една страница и един макрос.
Това го написах, защото например се опитах да внеса малка промяна в това:
https://github.com/ustctug/ustcthesisПравех си експерименти просто. Не знаеш, колко трудно беше това.
Всъщност при ползването на шаблони, основният въпрос е за ползването им на различен език от английски (или поне не ползващ латиница).
По този повод написах:
LaTeX е просто решение за писане на подреден и естетически издържан документ. Подобно нещо е невъзможно за постиугане със собствено достъпен файлов формат за програма от класа на текстови процесор. Обаче задачата да съставите собствен шаблон за документ е относително сложна, защото се налага да познавате макро-възможностите на тази система.
Поради тази причина е най-удобно, ако този документ няма да използва специфично брандиране да е построен върху вече готов шаблон.
Тук има известна особеност, която ни връща отново към разширеното познание на системата. Поради причини в наследството на TeX, многоезичната работа е постижим по няколко начина процес, но е нещо, което изисква допълнителна работа и настройки. Затова при избора на готов шаблон, е най-добре, ако той не е на езика, който използваме, то да не е вече многоезичен, а да използва само един език.
Когато имаме шаблон, който вече е приведен за работа с няколко езика и използвания от нас не е сред тях, то добавянето му към останалите ще е незавидно по-неблагоприятно, отколкото към един вече използван език да добавим друг, което е относително лесно. Така се получава заради вече споменатите настройки и доработки, чието преправяне е предизвикателство над възможностите на стандартен потребител.
Това на практика означава да ползваме англоезични шаблони там, където нямаме родни.
Всъщност звучи малко по-страшно, отколкото е. Например за курсовата работа, която писах предните два дни, ползвах следното:
https://github.com/ElegantLaTeX/ElegantBookКойто е китайска разработка. Беше много лесно. Трябваше просто да зашия отгоре „светата тpоица“:
\usepackage[bulgarian]{babel}
%%%\usepackage{ucs}
\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
Точно в този случай си добавих \usepackage{romannum} и \usepackage[official]{eurosym}, но истината е, че това е от екстравагантност. Не са необходими. Първото пише римски цифри, но не ползва някакви специални знаци и е безсмислено. Втория ти дава евровия знак, но трудно ще намериш разликите между него и този на клавиатурите.
По-късно го промених като внесох промяна в cls, където са разположени локализации на разни езици. Добавянето на бългрски е добавяне на една декларация и малко копиран код. Смешното е, че е най-лесно да се копира монголската секция, защото ползва същото, каквото и ние (вземайки го от руснаците). Но това беше само защото исках да ползвам преведено едно от готовите им блокчета, това за дефиницията.
При тези китайци можеше да е лесно, но е защото са излозвали подход, който не пречи. Например е много по-трудно да добавиш език тук:
https://github.com/estamos/NTUA-ECE-Thesis-TemplateТова е защото гръка си е направил команди за ротиране между гръцки и английски. Трябва някак да ги заобиколиш или замениш, което не е работа за няколко минути. Показателно е, че е сам е зарязал работата по английската версия.
Изобщо подходите за многоезичност са няколко и това внася обърквания.
https://www.overleaf.com/learn/latex/International_language_supporthttps://www.overleaf.com/learn/latex/Multilingual_typesetting_on_Overleaf_using_babel_and_fontspechttps://www.overleaf.com/learn/latex/Multilingual_typesetting_on_Overleaf_using_polyglossia_and_fontspecИ естествено на SE има много въпроси и отговори по въпроса.
Пак по този повод написах:
Можем да се запитаме, а защо да не ползваме руски и украински шаблони (иползващи същата кодировка Т2А).
Нищо не ни пречи, но те също имат особености. Като цяло са неестетични. Направени са небрежно (никой не поглежда регистрите за грешки и предупреждения, log). Излишно се използват стари и причудливи възможности като pscyr по силата на навика. Общо взето дори скоро създадените шаблони са архаични. От друга страна е възможно да използват свръх инструменти като например т.нар. контейнери (в частност Docker). Начина на изграждане на руските шаблони е като цяло неортодоксален, за да не го наречем странен. И така нататък. Но са използваеми с повече ръчно конфигуриране на средата за транслация.
Тук визирах например:
https://github.com/AndreyAkinshin/Russian-Phd-LaTeX-Dissertation-TemplateВъпросните pscyr трудно ще ги накараш да работят на портативен MikTex, а без тях шаблона не е особено различен от по-лесни за рабобта от него.
Ако ме питаш, какъв шаблон ползвах накрая, това беше:
https://github.com/Pseudomanifold/latex-mimosisНа него отдавна съм му хвърлил око. За визуалния доклад го споменах в него самия, но беше:
https://github.com/CabanaLab/cabana-texАко погледнеш темата „Разно извънтемие“, там още на първа страница говоря за този шаблон. Толкова дълго чаках случай да ми падне да го ползвам.
Хайде да спирам, че пак се олях.
===
¹/ Нямам нищо напротив да се знае, кандидатсването в него беше моя идея, избраната специалност също. Информацията я има публично в профила му в Spybook. Но някак си, докато правя нередни неща, не ми се ще да го обявявам на всеослушание. Само да декларирам, че крайното решение си беше на студента. Не съм го принуждавал за нищо. Имаше поне още три университета, където беше приет, включая УНСС и то първо желание, избрано лично от него. Той си взе решението.