Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Asset

resource

mark

extra

cache

Civitai

resource

typetagbase_modellinklicensetrigger_words
checkpoint trainedbase modelSD 1.5A-Zovya RPG Artist Toolsurl/
workflowstoolFlux.1 DALL simple workflow FLUX|UPSCALE|LORA|GGUF|CIVITAI Metadataurl/
checkpoint trainedconceptSD 1.5Album Cover Arturlin the style of album cover art, album cover
lorastyleSD 1.5Anime Lineart / Manga-like (线稿/線画/マンガ風/漫画风) Styleurllineart, monochrome
lorastylePonyArnold Lobel for Pony/Illustration by Lobel
checkpoint trainedbase modelSD 1.5Centerflexurl/
workflowsbackgroundSDXL LightningChange product background with the image of your choice using Style Transfer.//
vaestyleSD 1.5ClearVAE(SD1.5)//
workflowstoolSDXL 1.0ComfyUI — Tell the Differenceurl/
lorastyleSDXL 1.0CommerceStyleXL/productscene
checkpoint mergestyleSD 1.5Curiosity Mixurl/
checkpoint trainedstyle/D&D battlemaps//
loraconceptSD 1.5Detail Tweaker LoRA (细节调整LoRA)//
checkpoint mergebase modelSD 1.5DunkMashurl/
lorastyleFlux.1 DE-commerce High Quality Flux1.d Loraurl/
checkpoint mergestyleSDXL 1.0E-commerce_Photographyurl/
checkpoint mergeconceptSD 1.5Earth Satellite Image Map Generator Mixurlsatellite image of oeax location, mapsatimageeu, gamelandscapeheightmap512
embeddingtoolSD 1.5EasyNegative/easynegative
lorastyleSDXL 1.0Eldritch Impressionism oil painting/impressionist painting
lorabackgroundFlux.1 DFLUX Commerce | Revolutionizing E-Commerce with Stunning Backgroundsurlbackground
base modelbase modelFlux.1 DFLUX.1 [dev]url/
checkpoint mergebase modelSD 1.5Flat-2D Animergeurl/
checkpoint mergebase modelSD 1.5Fortyfour_oilpainting_V1url/
lorastyleSD 1.5Fromenteau Style//
checkpoint mergebase modelSD 1.5GhostMixurl/
checkpoint trainedstyleSD 1.5Giovanni Battista Piranesi 1700s/ilsgiovannibattistapiranesi, etching
loraconceptSD 1.5Good Hands LoRA//
lorastyleSD 1.5Landscape Ink//
workflowsstyleFlux.1 DLoRA on the fly with Flux Fillurl/
lorastyleSDXL 1.0Luigi Serafini Style|SDXL|LoRA/Serafini Style
checkpoint mergestyleSD 1.5LusterMixurl/
checkpoint mergetoolSD 1.5M41Durl/
lorastyleSDXL 1.0Medieval Illustration Style - SDXL 1.0/vintageillustration
checkpoint trainedbase modelSD 1.5MooMooE-commerceurlArtComposition
checkpoint trainedstylePonyNEW ERA (New Esthetic Retro Anime)url1990s (style), 1980s (style), 2000s (style), retro artstyle
loraconceptIllustriousNegative space - Illustrious XL/negative space
base modelbase modelSDXL 1.0SD-XL 1.0-baseurl/
lorastyleSDXL 1.0SDXL Inkdrawing/Inkdrawing
checkpoint trainedbackgroundSD 1.5Satellite Image Generator - MapSatimageEU - Cloudless CPurlmapsatimageeu
lorastyleSDXL 1.0Sivokon Style SDXL/soviet cartoon, style of sivokon
lorastyleSD 1.5Socrealistic Mosaic Style/socrealmosaic, mosaic, ceramic tile
base modelbase modelSD 1.5Stable Diffusion v1-5url/
other/SD 1.5Ultra Sharp High Contrast Tutorial +vae&upscalerurl/
checkpoint mergecharacterSD 1.5Utopiaurl/
lorastyleSDXL 1.0Vintage Marker/Marker Illustration
lorastyleSDXL 1.0Voxel XL/voxel style
lorarealisticSD 1.5WFProduct E-commerce Scenariourlwfproduct
workflowsclothingOtherWinstons Workflow Collectionurl/
workflowsclothingOtherWorkflow ComfyUi - Modify clothes at full resolution//
checkpoint trainedbackgroundSD 1.5natural earthurlsatellite image of oeax location

ctan

pdftopiclink_ctanlink_sourcelink_readmemaintainer
otf font, sans font, maths font, fontpennstander-otf – OpenType versions of the pennstander fonts (with math support)pennstander-otfReadmeCédric Pierquet
otf font, monospaced font, font support, fontMonaSpace-OTF – OpenType MonaSpace fonts with fontspec supportmonaspace-otfReadmeCédric Pierquet
verbatim, decorationterminalcode – Terminal-style code display with ANSI colors, UTF-8 box-drawing, and dark/light themesterminalcodeReadmeQirui Zeng
font, font support, archaic font, font ttfLydType – Typing in the Lydian alphabetlydtypeReadmeJonathan Walls
font support, font supp symbolpanda – A package to estimate the blackness of fontspandaReadmesamcarter
metadata, macro support, experimental latex3pkginfograb – Collect LaTeX package infos in a regular waypkginfograbReadmeAlceu Frigeri
luatex, graphics symbols, experimental, latex3, text symbol, pgf tikzKKsymbols – LaTeX commands for enclosing characters in circles, squares, diamonds, or bracketsReadmeKKTeX
graphics, games, pgf tikzmathador – LaTeX commands for the French game “Mathador”mathadorReadmeCédric Pierquet
diagrams, graphics, music, luatex, pgf tikzfretplot – Create scale and chord diagrams for guitar-like instrumentsfretplotReadmeSoumendra Ganguly
label and referencescleveref – Intelligent cross-referencingcleverefReadmeToby Cubitt
games, pgf tikzeigo – Comprehensive tools for creating Go (Weiqi/Baduk) game diagrams in LaTeXeigoReadmeMarc Levivier
bibliobibtex – Process bibliographies (bib files) for LaTeX or other formatsbibtexReadmeOren Patashnik
bibtex styleurlbst – Web support for BibTeXurlbstReadmeNorman Gray
graphics symbols, logobootstrapicons – Icons from the framework BootstrapbootstrapiconsReadmeBen Steinhauer
bookhand font, calligraphic font, display font, font support, medieval font, otf font, proportional fontAboensis – A late medieval OpenType cursive fontaboensisReadmeTommi Syrjänen
font, font supp symbol, font symbol, font ttfacademicons – Font containing high quality icons of online academic profilesacademiconsReadmeDiogo A. B. Fernandes
body font, font, font serif, font support, font t1enc, font type1, otf font, proportional fontaccanthis – Accanthis fonts, with LaTeX supportaccanthisReadmeBob Tennent
body font, font, font serif, font t1enc, font type1, otf font, proportional font, sans fontalegreya – Alegreya fonts with LaTeX supportalegreyaReadmeBob Tennent
body font, calligraphic font, font, font serif, font support, font t1enc, font ttf, font type1, proportional fontalmendra – Almendra fonts with LaTeX supportalmendraReadmeBob Tennent
archaic font, font, font type1linearA – Linear A script fontslinearaReadmeApostolos Syropoulos
archaic font, font, font type1, greek font, mf fontlinearb – Linear B script used in the Bronze Age for Mycenaean GreeklinearbReadmePeter R. Wilson
archaic font, font, font type1, mf fontoldprsn – Fonts old Persian cuneiform scriptoldprsnReadmePeter R. Wilson
archaic font, font, font type1phoenician – Fonts for the Phoenician script in use from about 1600 BCphoenicianReadmePeter R. Wilson
archaic font, font, font type1, mf fontprotosem – Fonts for proto-Semitic cuneiform scriptprotosemReadmePeter R. Wilson
archaic font, font, font type1, rune fontrunic – Fonts for Anglo-Saxon futharc scriptrunicReadmePeter R. Wilson
body font, font, font serif, font support, font t1enc, font ttf, proportional fontArchivo – The Archivo font face with support for LaTeX and pdfLaTeXarchivoReadmeCarl-Clemens Ebinger
cyrillic font, font, font ttf, font type1, font virtual, proportional font, sans fontarimo – Arimo sans serif fonts with LaTeX supportarimoReadmeBob Tennent, Steve Matteson
body font, font, font serif, font support, font t1enc, font ttf, proportional fontArvo – The Arvo font face with support for LaTeX and pdfLaTeXarvoReadmeCarl-Clemens Ebinger
accessibility support, font, font type1, otf font, sans fontatkinson – Support for the Atkinson Hyperlegible family of fontsatkinsonReadmeBob Tennent
calligraphic font, font, font type1aurical – Calligraphic fonts for use with LaTeX in T1 encodingauricalReadmeChristian Gollwitzer
bbd font, font, maths font, mf fontbbold – Sans serif blackboard boldbboldReadmeAlan Jeffrey (deceased)
bbd font, font, font support, font type1, maths fontbboldx – Extension of the bbold package with a Blackboard Bold alphabetbboldxReadmeMichael Sharpe
body font, font, font serif, font support, font t1enc, font ttf, font type1, proportional fontbitter – The Bitter family of fonts with LaTeX supportbitterReadmeBob Tennent
bookhand font, font, medieval font, mf fontpgothic – Fonts based on the Gothic Textura Prescisus manuscript book-handpgothicReadmePeter R. Wilson
body font, font, font support, font t1enc, font type1, otf font, proportional font, sans fontcabin – A humanist Sans Serif font, with LaTeX supportcabinReadmeBob Tennent
body font, font, font serif, font support, font t1enc, font ttf, font type1, proportional fontcaladea – Support for the Caladea family of fontscaladeaReadmeBob Tennent
font, font type1, sans fontcantarell – LaTeX support for the Cantarell font familycantarellReadmeMohamed El Morabity
font, font ttf, font type1, sans fontcarlito – Support for Carlito sans-serif fontscarlitoReadmeBob Tennent
font, font support, font t1enc, font type1, monospaced font, otf font, sans fontCascadiaCode – The Cascadia Code font with support for LaTeX and pdfLaTeXcascadia-codeReadmeCarl-Clemens Ebinger
font, font symbol, font type1ccicons – LaTeX support for Creative Commons iconscciconsReadmeMichael Ummels
decor font, font, font support, font t1enc, font ttf, font type1cinzel – LaTeX support for Cinzel and Cinzel Decorative fontscinzelReadmeBob Tennent
body font, font, font support, font t1enc, font ttf, font type1, proportional font, sans fontclearsans – Clear Sans fonts with LaTeX supportclearsansReadmeBob Tennent
font, font type1, maths font, mf fontcmll – Symbols for linear logiccmllReadmeEmmanuel Beffara
body font, font, font serif, font support, font t1enc, font type1, otf font, proportional fontcoelacanth – Coelacanth fonts with LaTeX supportcoelacanthReadmeBob Tennent
font, font support, sans fontcomfortaa – Sans serif font, with LaTeX supportcomfortaaReadmeJohan Aakerlund, Mohamed El Morabity
font, font support, font type1, otf fontcomicneue – Use Comic Neue with TeX(-alike) systemscomicneueReadmeSilke Hofstra
font supportcomicsans – Use Microsoft Comic Sans fontcomicsansReadmeScott Pakin
font, font t1enc, font type1, otf font, proportional font, sans fontcooperhewitt – LaTeX, pdfLaTeX, XeLaTeX and LuaLaTeX support for the Cooper Hewitt family of sans serif fontscooperhewittReadmeBob Tennent
body font, font, font serif, font support, font t1enc, font ttf, font type1, proportional fontCormorantGaramond – Cormorant Garamond family of fontscormorantgaramondReadmeBob Tennent
font, font serif, font t1enc, font type1, otf font, proportional fontcrimson – Crimson fonts with LaTeX supportcrimsonReadmeBob Tennent
font, font serif, font t1enc, font ttf, font type1, proportional fontCrimsonPro – CrimsonPro fonts with LaTeX supportcrimsonproReadmeBob Tennent
font, font type1, mf font, otf fontdrm – A complete family of fonts written in METAFONTdrmReadmeDonald P. Goodman
body font, font, font serif, font support, font t1enc, font ttf, font type1, monospaced font, proportional font, sans fontdroid – LaTeX support for the Droid font familiesdroidReadmeMohamed El Morabity, Steve Matteson
bbd font, font, font serif, font type1, maths fontDSSerif – A double-struck serifed font for mathematical usedsserifReadmeMichael Sharpe
body font, font, font serif, font t1enc, font type1, otf font, proportional fontebgaramond – LaTeX support for EBGaramond fontsebgaramondReadmeBob Tennent
font, font type1electrumadf – Electrum ADF fonts collectionelectrumadfReadmeClea F. Rees
calligraphic font, novelty fontemerald – Support for the free emerald city fontwerks fontsemeraldReadmeM. César Rodríguez
body font, font, font serif, font support, font t1enc, font type1, otf font, proportional fontfbb – A free Bembo-like fontfbbReadmeMichael Sharpe
body font, font, font support, font t1enc, font type1, monospaced font, otf font, proportional font, sans fontfira – Fira fonts with LaTeX supportfiraReadmeBob Tennent
font, font supp symbol, font symbol, font type1, otf fontfontawesome – Font containing web-related iconsfontawesomeReadmeDave Gandy, Xavier Danaux
body font, cyrillic font, font, font serif, font support, font t1enc, font type1, multilingual font, otf font, proportional fontforum – Forum fonts with LaTeX supportforumReadmeBob Tennent
body font, cyrillic font, font, font serif, font support, font t1enc, font type1, greek font, multilingual font, otf font, proportional fontgaramond-libre – The Garamond Libre font facegaramond-libreReadmeBob Tennent, Daniel Benjamin Miller
body font, font, font serif, font type1, otf font, proportional fontgelasio – LaTeX support for the Gelasio family of fontsgelasioReadmeBob Tennent
body font, font, font support, font t1enc, font type1, otf font, proportional font, sans fontgillius – Gillius fonts with LaTeX supportgilliusReadmeBob Tennent
body font, cyrillic font, font, font serif, font support, font t1enc, font ttf, font type1, greek font, monospaced font, multilingual font, proportional font, sans fontgofonts – GoSans and GoMono fonts with LaTeX supportgofontsReadmeBob Tennent
font support, greek fontcbfonts-fd – LaTeX font description files for the CB Greek fontscbfonts-fdReadmeClaudio Beccari
font, font type1, greek font, otf fontGFS Bodoni – A Greek and Latin font based on BodonigfsbodoniReadmeAntonis Tsolomitis, The Greek Font Society
font, font type1, greek font, otf fontGFS Complutum – A Greek font with a long historygfscomplutumReadmeAntonis Tsolomitis, George D. Matthiopoulos
body font, font, font serif, font t1enc, font type1, greek font, multilingual font, otf fontGFSDidot – A Greek font based on Didot’s workgfsdidotReadmeAlain Aubord, Antonis Tsolomitis, George D. Matthiopoulos, The Greek Font Society
body font, font, greek font, otf fontGFSDidotClassic – The classic version of GFSDidotgfsdidotclassicReadmeAntonis Tsolomitis
font, greek font, otf fontGFS NeoHellenic – A font in the Neo-Hellenic stylegfsneohellenicReadmeAntonis Tsolomitis, The Greek Font Society
font, greek font, mf fontlfb – A Greek font with normal and bold variantslfbReadmeLaurie Field
body font, font, font support, font t1enc, font type1, proportional font, sans fontgudea – The Gudea font face with support for LaTeX and pdfLaTeXgudeaReadmeCarl-Clemens Ebinger
body font, font, font serif, font support, font t1enc, font type1, otf font, proportional fontibarra – LaTeX support for the Ibarra Real Nova family of fontsibarraReadmeBob Tennent
font, font symbol, games, mf fontigo – Fonts and macro to typeset Go diagramsigoReadmeÉtienne Dupuis
body font, font, font support, font t1enc, font type1, otf font, proportional font, sans fontinter – The inter font face with support for LaTeX, XeLaTeX, and LuaLaTeXinterReadmeCarl-Clemens Ebinger
font, font type1, otf fontiwona – A two-element sans-serif fontiwonaReadmeJanusz Marian Nowacki (deceased)
font, mf font, novelty fontjablantile – METAFONT version of tiles in the style of Slavik JablanjablantileReadmeDonald E. Knuth
font support, monospaced font, otf fontjetbrainsmono-otf – Package (or only fontspec config files) support for the OpenType font JetBrainsjetbrainsmono-otfReadmeCédric Pierquet
body font, font, font support, font t1enc, font type1, monospaced font, otf font, proportional font, sans fontjosefin – Josefin fonts with LaTeX supportjosefinReadmeBob Tennent
font, font support, font type1, historical font, medieval font, otf fontJunicode – A TrueType and OpenType font family for mediaevalistsjunicodeReadmeBob Tennent, Peter S. Baker
diagrams, font, font symbol, font type1, mf fontknitting – Produce knitting charts, in Plain TeX or LaTeXknittingReadmeAriel Barton
font, font serif, font type1, maths font, monospaced font, sans fontkpfonts – A complete set of fonts for text and mathematicskpfontsReadmeChristophe Caignaert (inactive)
font, font type1, otf fontkurier – A two-element sans-serif typefacekurierReadmeJanusz Marian Nowacki (deceased)
font, font ttf, font type1, sans fontlato – Lato font family and LaTeX supportlatoReadmeMohamed El Morabity, Łukasz Dziedzic
body font, font, font serif, font support, font t1enc, font type1, monospaced font, otf font, sans fontlibertine – Use of Linux Libertine and Biolinum fonts with LaTeXlibertineReadmeBob Tennent
body font, cyrillic font, font, font serif, font support, font t1enc, font type1, greek font, multilingual font, otf font, proportional fontlinguisticspro – LinguisticsPro fonts with LaTeX supportlinguisticsproReadmeBob Tennent
calligraphic font, font, font support, font t1enc, font type1, otf font, proportional fontlobster2 – Lobster Two fonts, with support for all LaTeX engineslobster2ReadmeBob Tennent
font supportlsabon – Support files for the Linotype Sabon fontslsabonReadmeBoris Veytsman
body font, font, font support, font t1enc, font type1, proportional font, sans fontmagra – The Magra font face with support for LaTeX and pdfLaTeXmagraReadmeCarl-Clemens Ebinger
body font, font, font support, font t1enc, font ttf, font type1, proportional fontMarcellus – Marcellus fonts with LaTeX supportmarcellusReadmeBob Tennent
font, font symbol maths, mf fontmathabx – Three series of mathematical symbolsmathabxReadmeAnthony Phan
font, font supp maths, font type1, maths fontmathdesign – Mathematical fonts to fit with particular text fontsmathdesignReadmePaul Pichaureau
body font, font, font serif, font support, font t1enc, font ttf, font type1, proportional font, sans fontmerriweather – Merriweather and MerriweatherSans fonts, with LaTeX supportmerriweatherReadmeBob Tennent
font, font specialist, font symbol, otf font, scientific docs, sfd fontmetsymb – The package provides dedicated TeX commands to generate (vectorial) meteorological symbolsmetsymbReadmeFrédéric P.A. Vogt
body font, font, font serif, font support, font type1, otf font, proportional fontmfb-oldstyle – MFB Oldstyle serif fontsmfb-oldstyleReadmeDaniel Benjamin Miller
body font, font, font support, font t1enc, font type1, otf font, proportional font, sans fontmintspirit – LaTeX support for MintSpirit font familiesmintspiritReadmeBob Tennent
gothic font, medieval font, otf fontmissaali – A late medieval OpenType textura fontmissaaliReadmeTommi Syrjänen
font, font t1enc, font type1, otf font, sans fontmontserrat – Montserrat sans serif, otf and pfb, with LaTeX support filesmontserratReadmeMichael Sharpe
body font, font, font serif, font support, font t1enc, font type1, maths font, otf font, proportional fontnewtx – Alternative uses of the TX fonts, with improved metricsnewtxReadmeMichael Sharpe
font, font type1, maths font, sans fontnewtxsf – Sans-math fonts for use with newtxnewtxsfReadmeMichael Sharpe
font, font support, font t1enc, font type1, monospaced fontnewtxtt – Enhancement of typewriter fonts from newtxnewtxttReadmeMichael Sharpe
body font, font, font support, font t1enc, font type1, otf font, proportional font, sans fontNunito – The Nunito font face with support for LaTeX and pdfLaTeXnunitoReadmeCarl-Clemens Ebinger
font symbol maths, font type1old-arrows – Computer Modern old-style arrows with smaller arrowheadsold-arrowsReadmeRiccardo Dossena
body font, cyrillic font, font, font serif, font support, font t1enc, font type1, greek font, maths font, multilingual font, otf font, proportional fontOldStandard – OldStandard fonts with LaTeX supportoldstandardReadmeAlexey Kryukov (inactive), Antonis Tsolomitis, Bob Tennent, Nikola Lečić, Robert Alessi
turkishorkhun – A font for orkhun scriptorkhunReadmeAbdugafur Rakhimov
font, font support, font t1enc, font type1, proportional font, sans fontOswald – The Oswald family of fonts with support for LaTeX and pdfLaTeXoswaldReadmeCarl-Clemens Ebinger
font, font ttf, font type1, sans fontoverlock – Overlock sans fonts with LaTeX supportoverlockReadmeBob Tennent
body font, display font, font, font serif, font support, font t1enc, font type1, otf font, proportional fontplayfair – Playfair Display fonts with LaTeX supportplayfairReadmeBob Tennent
body font, font, font support, font t1enc, font ttf, font type1, proportional font, sans fontpoiretone – PoiretOne family of fonts with LaTeX supportpoiretoneReadmeBob Tennent
astrology, font, font specialist, font ttfstarfont – The StarFont Sans astrological fontstarfontReadmeMatthew Skala
font supportdogma – Metrics and LaTeX support for Dogma Font From Emigre GraphicsdogmaReadmeBoris Veytsman
font supportleawood – LaTeX support for use of ITC Leawood font familyleawoodReadmeScott Pakin
body font, font, font serif, font support, font t1enc, font ttf, font type1, proportional font, sans fontquattrocento – Quattrocento and Quattrocento Sans fonts with LaTeX supportquattrocentoReadmeBob Tennent
font, font type1romandeadf – Romande ADF fonts and LaTeX supportromandeadfReadmeClea F. Rees
font, font support, font type1, otf font, sans fontrosario – Using the free Rosario fonts with LaTeXrosarioReadmeArash Esbati
body font, font, font collection, font serif, font symbol, font symbol maths, maths font, nonroman font, otf fontstix2-otf – OpenType Unicode text and maths fontsstix2-otfReadmeDavid M. Jones, The STI Pub Companies
font, luatex, maths font, otf font, xetextermes-otf – Using the OpenType fonts TeX Gyre Termestermes-otfReadmeHerbert Voß
font, font supp symbol, font symbol, font ttftypicons – Font containing a set of web-related iconstypiconsReadmeArthur Vigil
font supp mathsurwchancal – Use URW’s clone of Zapf Chancery as a maths alphabeturwchancalReadmeMichael Sharpe
font, font symbol, mf fontwasy – The wasy fonts (Waldi symbol fonts)wasyReadmeRoland Waldi
body font, cyrillic font, font, font serif, font support, font t1enc, font type1, multilingual font, otf font, proportional fontXCharter – Extension of Bitstream Charter fontsxcharterReadmeMichael Sharpe
gamesxq – Support for writing about xiangqixqReadmeSebastian Pipping (inactive), Stephan Weinhold (inactive)
body font, cyrillic font, font, font support, font t1enc, font ttf, font type1, otf font, proportional font, sans fontYsabeau – Ysabeau fonts with LaTeX support for traditional TeX enginesysabeauReadmeNoel Merino Hernández
boxingawesomebox – Draw admonition blocks in your documents, illustrated with FontAwesome iconsawesomeboxReadmeÉtienne Deparis
gen chartbardiag – LaTeX package for drawing bar diagramsbardiagReadmeR. Stepanyan
boxing, logobclogo – Creating colourful boxes with logosbclogoReadmeMaxime Chupin
amusements, decoration, graphics use, luatexbookshelf – Create a nice image from a BibTeX filebookshelfReadmeBoris Veytsman, Peter Flynn (inactive)
chemistry, foreign import, graphicschemobabel – Convert chemical structures from ChemDraw, MDL molfile or SMILES using Open BabelchemobabelReadmeHironobu Yamashita
circuit diagram, electronicCircuit_macros – M4 macros for electric circuit diagramscircuit-macrosReadmeDwight Aplevich
circuit diagram, diagramsduotenzor – Drawing package for circuit and duotensor diagramsduotenzorReadmeLucien Hardy
graphicsellipse – Draw ellipses and elliptical arcs using the standard LaTeX2ε picture environmentellipseReadmeDaan Leijen
graphics in texGasTeX – Graphs and Automata Simplified in TeXgastexReadmePaul Gastin
biblatex, germangchords – Typeset guitar chordsgchordsReadmeIain Phillips, Matthew Tylee Atkinson
graphics, maths, teachinggraph35 – Draw keys and screen items of several Casio calculatorsgraph35ReadmeLouis Paternault
graphics includeLaTeXScreenShooter – Capture screenshots within LaTeX documentslatexscreenshooterReadmeQuentin Vaney, Xavier Freléchoz
games, graphicsmahjong – Typeset Mahjong Tiles using MPSZ NotationmahjongReadmeDaniel Schmitz
automataautomata – Finite state machines, graphs and trees in METAPOSTautomataReadmeGabriele Puppis
block diagramsblockdraw_mp – Block diagrams and bond graphs, with METAPOSTblockdraw_mpReadmeHenrik Tidefelt
graphics symbolscmarrows – METAPOST arrows and braces in the Computer Modern stylecmarrowsReadmeTommy Ekola
diagrams, graphics in texexpressg – Diagrams consisting of boxes, lines, and annotationsexpressgReadmePeter R. Wilson
3d graphicsfeatpost – METAPOST macros for 3DfeatpostReadmeLuís Nobre Gonçalves
graphics, graphics metapost, physicsfiziko – A METAPOST library for physics textbook illustrationsfizikoReadmeSergey Slyusarev
metapost support, metapost usehershey-mp – METAPOST support for the Hershey font file formathershey-mpReadmeEsger Renkema
graphics metapost, treehuffman – Drawing binary Huffman trees with METAPOST and METAOBJhuffmanReadmeMaxime Chupin
3d graphics, graphics usem3D – Extension of plain METAPOST for 3D graphicsm3dReadmeAnthony Phan
circuit diagramMakeCirc – A METAPOST library for drawing electrical circuit diagramsmakecircReadmeGustavo Sebastián Bustamante Argañaraz
graphics enginemetaobj – METAPOST package providing high-level objectsmetaobjReadmeDenis B. Roegel
metapost use, umlmetauml – METAPOST library for typesetting UML diagramsmetaumlReadmeOvidiu Gheorghies
3d graphics, metapost usethreed – 3D animationsthreedReadmeDenis B. Roegel
metapost supportmparrows – METAPOST module with different types of arrow headsmparrowsReadmePalle Jørgensen
graphics usempattern – Patterns in METAPOSTmpatternReadmePiotr Bolek
games, graphics, graphics metapost, metapost useMPchess – Drawing chess boards and positions with METAPOSTmpchessReadmeMaxime Chupin
diagrams, graphics plotmpkiviat – METAPOST package to draw Kiviat diagramsmpkiviatReadmeMaxime Chupin
graphics metapost, math diagrams, maths, probabilitymptrees – Probability trees with METAPOSTmptreesReadmeOlivier Péault
gen chartpiechartmp – Draw pie-charts using METAPOSTpiechartmpReadmeJens-Uwe Morawski
graphics metapost, maths, teachingrepere – METAPOST macros for secondary school mathematics teachersrepereReadmeOlivier Péault
boxing, graphics metapostroundrect – METAPOST macros for highly configurable rounded rectangles (optionally with text)roundrectReadmeDonald P. Goodman
mathsshapes – Draw polygons, reentrant stars, and fractions in circles with METAPOSTshapesReadmeDonald P. Goodman
presentationslideshow – Generate slideshow with METAPOSTslideshow/Patrick T J McPhee
graphics texttextpath – Setting text along a path with METAPOSTtextpathReadmeStephan Hennig
graphics texttxp – Draw text along a pathtxpReadmeSantiago Muelas
graphics in texmfpic – Draw METAFONT/post pictures from (La)TeX commandsmfpicReadmeDaniel H. Luecking, Geoffrey Tobin
graphics plot, graphics plot function, mathsmglTeX – High-quality graphics from MGL scripts embedded in LaTeX documentsmgltexReadmeAlexey Balakin, Diego Sejas Viscarra
graphics subpic, luatexminim-hatching – Create tiling patterns with the minim-mp METAPOST processorminim-hatchingReadmeEsger Renkema
chemistry, foreign importmol2chemfig – Convert chemical structures from MDL molfile format to chemfig source codemol2chemfigReadmeMichael Palmer
graphics, graphics in tex, pgf tikzpgf – Create PostScript and PDF graphics in TeXpgfReadmeChristian Feuersänger, Henri Menke, The PGF/TikZ Team, Till Tantau
diagrams, pgf tikzadigraph – Augmenting directed graphsadigraphReadmeLuca Cappelletti
automata, graphics, pgf tikzaiplans – A TikZ-based library for drawing POCL plansaiplansReadmePascal Bercher, Yikai Ge
graphics in tex, pgf tikz, treebinarytree – Drawing binary trees using TikZbinarytreeReadmeAleksandrina Nikolova
pgf tikz, physicsblochsphere – Draw pseudo-3D diagrams of Bloch spheresblochsphereReadmeMatthew Wardrop
control diagramsbloques – Generate control diagramsbloquesReadmeAlejandro Garces Ruiz
block diagrams, graphics, pgf tikzblox – Draw block diagrams, using TikZbloxReadmeBen Reish
engineering, graphics plot, pgf tikzbodegraph – Draw Bode, Nyquist and Black plots with gnuplot and TikZbodegraphReadmeRobert Papanicola
engineering, graphics plot, pgf tikzbodeplot – Draw Bode, Nyquist and Nichols plots with gnuplot or pgfplotsbodeplotReadmeRushikesh Kamalapurkar
diagrams, graphics, maths, pgf tikzbraids – Draw braid diagrams with PGF/TikZbraidsReadmeAndrew Stacey
amusements, graphics, pgf tikzbyo-twemojis – “Build Your Own Twemojis” with TikZbyo-twemojisReadmeJost Rossel
graphics, pgf tikzcallouts – Put simple annotations and notes inside a picturecalloutsReadmeMarkus Stuetz
graphics, math diagrams, maths, pgf tikzcausets – Draw causal set (Hasse) diagramscausetsReadmeChristoph Minz
graphics, pgf tikzceltic – A TikZ library for drawing celtic knotscelticReadmeAndrew Stacey
chemistry, flow diagrams, graphics, pgf tikzchemplants – Symbology to draw chemical plants with TikZchemplantsReadmeElia Arnese Feffin
chords, music, pgf tikzchordbox – Draw chord diagramschordboxReadmeSteven Franzen
circuit diagram, electronic, graphics, pgf tikzCircuiTikZ – Draw electrical networks with TikZcircuitikzReadmeMassimo Redaelli, Romano Giannetti, Stefan Erhardt, Stefan Lindner
font, pgf tikzcircularglyphs – A circular glyphs alphabetcircularglyphsReadmeCédric Pierquet
amusements, graphics, pgf tikzcoffeestains – Add coffee stains to documentscoffeestainsReadmePatrick Bideault
commutative diagrams, diagrams, graphics, math diagrams, maths, pgf tikzcommutative-diagrams – CoDi: Commutative Diagrams for TeXcommutative-diagramsReadmePaolo Brasolin
boxing, decoration, pgf tikzDPcircling – Decorated text boxes using TikZdpcirclingReadmeOura Mitsuaki
diagrams, graphics, pgf tikzdynkin-diagrams – Draw Dynkin, Coxeter, and Satake diagrams using TikZdynkin-diagramsReadmeBenjamin McKay
calculation, graphics, graphics supp, pgf tikzeasing – Easing functions for pgfmatheasingReadmeKa-tsun Loh
graphics, maths, pgf tikzeuclidean-lattice – Draw two-dimensional Euclidean lattices with TikZeuclidean-latticeReadmeJérôme Plût
pgf tikz, qr codefancyqr – Fancy QR-Codes with TikZfancyqrReadmeFlorian Sihler
diagrams, pgf tikzfast-diagram – Easy generation of FAST diagramsfast-diagramReadmeRaphaël Allais
flow diagrams, pgf tikzflowchart – Shapes for drawing flowcharts, using TikZflowchartReadmeAdrian P. Robson
linguistic, pgf tikz, treeforest – Drawing (linguistic) treesforestReadmeSašo Živanović
diagrams, pgf tikzgrafcet – Draw Grafcet/SFC with TikZgrafcetReadmeRobert Papanicola
graphics symbols, pgf tikzharveyballs – Create Harvey Balls using TikZharveyballsReadmeSascha Roth
games, graphicshexboard – For drawing Hex boards and gameshexboardReadmeChris Sangwin, Peter Rowlett
curve graphics, experimental latex3, graphics in tex, graphics supp, pgf tikzhobby – An implementation of Hobby’s algorithm for PGF/TikZhobbyReadmeAndrew Stacey
games, pgf tikz, treeistgame – Draw Game Trees with TikZistgameReadmeIn-Sung Cho
pgf tikzjigsaw – Draw jigsaw pieces with TikZjigsawReadmesamcarter
engineering, maths, pgf tikzkarnaugh-map – LaTeX package for drawing karnaugh maps with up to 6 variableskarnaugh-mapReadmeMattias Jacobsson
block diagrams, flow diagramskblocks – Easily typeset Control Block Diagrams and Signal Flow GraphskblocksReadmeOluwasegun Somefun
pgf tikz, physicskinematikz – Design kinematic chains and mechanismskinematikzReadmeVitor Santos
circuit diagram, pgf tikzladder – Draw simple ladder diagrams using TikZladderReadmeAurélien Cadiou
diagrams, pgf tikzlie-hasse – Draw Hasse diagramslie-hasseReadmeBenjamin McKay
pgf tikzmakeshape – Declare new PGF shapesmakeshapeReadmeAdrian P. Robson
maths, pgf tikzmatrix-skeleton – A PGF/TikZ library that simplifies working with multiple matrix nodesmatrix-skeletonReadmeNicolas Dudebout
graphics, pgf tikzmemorygraphs – TikZ styles to typeset graphs of program memorymemorygraphsReadmeCamil Staps
diagrams, pgf tikzmessagepassing – Draw diagrams to represent communication protocolsmessagepassingReadmeMartin Vassor
graphics, pgf tikz, symbol supportMilSymb – LaTeX package for TikZ based drawing of military symbols as per NATO APP-6(C)milsymbReadmeDamian Crosby
games, graphics, pgf tikznimsticks – Draws sticks for games of multi-pile NimnimsticksReadmePeter Rowlett
maths, pgf tikznl-interval – Represent intervals on the number linenl-intervalReadmeAntero Neves
diagramsnndraw – Draw neural networksnndrawReadmeCarlos Cardoso Dias
chemistry, engineering, graphics, pgf tikzpfdicons – Draw process flow diagrams in chemical engineeringpfdiconsReadmeAaron Drews
pgf tikz, physicspgf-interference – Drawing interference patterns with PGF/TikZpgf-interferenceReadmeKeno Wehr
chemistry, pgf tikzpgf-PeriodicTable – Create custom periodic tables of elementspgf-periodictableReadmeHugo Gomes
gen chart, pgf tikzpgf-pie – Draw pie charts, using PGFpgf-pieReadmeThe PGF/TikZ Team, Xu Yuan
diagramspgf-soroban – Create images of the soroban using TikZ/PGFpgf-sorobanReadmeAlain Delmotte
pgf tikz, physicspgf-spectra – Draw continuous or discrete spectra using PGF/TikZpgf-spectraReadmeHugo Gomes
pgf tikz, umlpgf-umlsd – Draw UML Sequence Diagramspgf-umlsdReadmeThe PGF/TikZ Team, Xu Yuan
diagrams, gantt, graphics, pgf tikzpgfgantt – Draw Gantt charts with TikZpgfganttReadmeWolfgang Esser-Skala (inactive)
pgf tikzpgfmorepages – Assemble multiple logical pages onto a physical pagepgfmorepagesReadmeAndrew Stacey
chinese, graphics symbols, pgf tikz, presentationpgfornament-han – pgfornament library for Chinese traditional motifs and patternspgfornament-hanReadmeLianTze Lim
graphics, graphics plot, pgf tikzpgfplots – Create normal/logarithmic plots in two and three dimensionspgfplotsReadmeChristian Feuersänger
graphics plotpgfplotstable – Loads, rounds, formats and postprocesses numerical tablespgfplotstableReadmeChristian Feuersänger
colour, graphics, graphics plot, presentationpgfplotsthemebeamer – Use colours from the current beamer theme in pgfplotspgfplotsthemebeamerReadmesamcarter
graphics, pgf tikzpictochrono – Insert “chronometer pictograms” with a durationpictochronoReadmeCédric Pierquet
electronic, graphics, pgf tikzpinouTikZ – Draw chip pinouts with TikZpinoutikzReadmeRobert Blazek
graphics, luatex, pgf tikzpixelart – Draw pixel-art picturespixelartReadmeLouis Paternault
graphics, pgf tikzPixelArtTikz – Work with PixelArts, with TikZpixelarttikzReadmeCédric Pierquet
cards, games, pgf tikzplaycards – A simple template for drawing playcardsplaycardsReadmeClément Pagès
graphics, maths, pgf tikzpolyhedra – A TikZ package for drawing polyhedrapolyhedraReadmeZafeirakis Zafeirakopoulos
logic, pgf tikz, treeprooftrees – Forest-based proof trees (symbolic logic)prooftreesReadmeClea F. Rees
logic, pgf tikzptolemaicastronomy – Diagrams of sphere models for variably strict conditionals (Lewis counterfactuals)ptolemaicastronomyReadmeRichard Zach
games, graphics, pgf tikzPuyoTikZ – Quickly typeset board states of Puyo Puyo gamespuyotikzReadmeAlexander Osborne
circuit diagram, graphics, pgf tikzquantikz – Draw quantum circuit diagramsquantikzReadmeAlastair Kay
chemistry, pgf tikzquickreaction – A simple and fast way to typeset chemical reactionsquickreactionReadmeFrancesco Lambertini
commutative diagrams, graphics, graphics in tex, pgf tikzquiver – Draw commutative diagrams exported from https://q.uiver.appquiverReadmevarkor
diagrams, pgf tikzreotex – Draw Reo Channels and CircuitsreotexReadmeNuno Oliveira
graphics, pgf tikzrobotarm – TikZ powered LaTeX package to draw parameterized 2D robot armsrobotarmReadmeMax J.W. Snippe
graphics in texrulercompass – A TikZ library for straight-edge and compass diagramsrulercompassReadmeAndrew Stacey
comp net, graphics usesa-tikz – TikZ library to draw switching architecturessa-tikzReadmeClaudio Fiandrino
diagrams, flow diagrams, graphics, pgf tikzsankey – Draw Sankey diagrams with TikZsankeyReadmePaul Gaborit
block diagrams, graphics, pgf tikzschemabloc – Draw block diagrams, using TikZschemablocReadmeRobert Papanicola
optics, pgf tikz, physicssimpleoptics – Drawing lenses and mirrors for optical diagramssimpleopticsReadmeJustin Cawood
diagrams, pgf tikzsmartdiagram – Generate diagrams from listssmartdiagramReadmeClaudio Fiandrino
curve graphics, pgf tikzspath3 – Manipulate “soft paths” in PGFspath3ReadmeAndrew Stacey
pgf tikzspectralsequences – Print spectral sequence diagrams using PGF/TikZspectralsequencesReadmeHood Chatham
engineering, pgf tikzstanli – TikZ Library for Structural AnalysisstanliReadmeJürgen Hackl
graphics, pgf tikzstrands – Draw objects constructed from strandsstrandsReadmeDiego Arcis
diagrams, graphics, maths, pgf tikzstring-diagrams – Create string diagrams with LaTeX and TikZstring-diagramsReadmePaolo Brasolin
pgf tikz, physicsstructmech – A TikZ command set for structural mechanics drawingsstructmechReadmeTheodore Chang
astronomy, graphics, pgf tikz, physicssunpath – Draw sun path chartssunpathReadmeHồng-Phúc Bùi
diagrams, flow diagrams, graphics, pgf tikzsyntaxdi – Create “railroad” syntax diagramssyntaxdiReadmeAndré Hilbig, Johannes Kuhaupt, Johannes Pieper
games, pgf tikz, puzzleTangramTikZ – Tangram puzzles, with TikZtangramtikzReadmeCédric Pierquet
documentation support, pgf tikzticollege – Graphical representation of keys on a standard scientific calculatorticollegeReadmePhilippe De Sousa
gamestictactoe – Drawing tic-tac-toe or Noughts and Crosses gamestictactoeReadmePeter Rowlett
3d graphics, graphics use, pgf tikztikz-3dplot – Coordinate transformation styles for 3d plotting in TikZtikz-3dplotReadmeJeffrey Hein
numbers, pgf tikzTikZ-Bagua – Draw Bagua symbols in Yijingtikz-baguaReadmeXu WANG
graphics, pgf tikztikz-bbox – Precise determination of bounding boxes in TikZtikz-bboxReadmemarmotghost
commutative diagrams, graphics, graphics in tex, pgf tikztikz-cd – Create commutative diagrams with TikZtikz-cdReadmeAugusto Stoffel
linguistic, pgf tikz, treetikz-dependency – A library for drawing dependency graphstikz-dependencyReadmeDaniele Pighin
pgf tikztikz-dimline – Technical dimension lines using PGF/TikZtikz-dimlineReadmeSébastien Gross
pgf tikz, physicsTikZ-FeynHand – Feynman diagrams with TikZtikz-feynhandReadmeMax Dohse
pgf tikz, physics, use luatextikz-feynman – Feynman diagrams with TikZtikz-feynmanReadmeJoshua Ellis
graphics, graphics include, graphics text, pgf tikztikz-imagelabels – Put labels on images using TikZtikz-imagelabelsReadmeTobias Plüss
logictikz-inet – Draw interaction nets with TikZtikz-inetReadmeMarc de Falco
calendar, class, pgf tikztikz-kalender – A LaTeX based calendar using TikZtikz-kalenderReadmeRolf Niepraschk
engineering, maths, pgf tikztikz-karnaugh – Typeset Karnaugh maps using TikZtikz-karnaughReadmeLuís Paulo Laus
circuit diagramm, diagramsm, engineeringm, pgf tikzmtikz-ladder – Draw ladder diagrams using TikZtikz-ladderReadmeLuís Paulo Laus
pgf tikztikz-lake-fig – Schematic diagrams of lakestikz-lake-figReadmeJoseph Stachelek
diagrams, optics, pgf tikz, physicstikz-mirror-lens – Spherical mirrors and lenses in TikZtikz-mirror-lensReadmeFernando H. G. Zucatelli
tikz-networktikz-network – Draw networks with TikZtikz-networkReadmeJürgen Hackl
graphics, pgf tikztikz-nfold – Triple, quadruple, and n-fold paths with TikZtikz-nfoldReadmeJonathan Schulz
graphics in tex, optics, pgf tikz, physicstikz-optics – A library for drawing optical setups with TikZtikz-opticsReadmeMichel Fruchart
graphics use, pgf tikz, physicstikz-osci – Produce oscilloscope “screen shots”tikz-osciReadmeThibault Giauffret
pgf tikztikz-page – Small macro to help building nice and complex layout materialstikz-pageReadmeSébastien Gross
pgf tikztikz-palattice – Draw particle accelerator lattices with TikZtikz-palatticeReadmeJan Schmidt
astronomy, graphics, pgf tikzTikZ-planets – Illustrate celestial mechanics and the solar systemtikz-planetsReadmeIsabelle M. Santos
treetikz-qtree – Use existing qtree syntax for trees in TikZtikz-qtreeReadmeDavid Chiang
circuit diagram, diagrams, engineering, pgf tikz, physicstikz-relay – TikZ library for typesetting electrical diagramstikz-relayReadmeLuís Paulo Laus
circuit diagram, diagrams, engineering, flow diagrams, pgf tikztikz-sfc – Symbols collection for typesetting Sequential Function Chart (SFC) diagrams (PLC programs)tikz-sfcReadmeLuís Paulo Laus
pgf tikztikz-swigs – Horizontally and vertically split elliptical nodestikz-swigsReadmeThomas S. Richardson
electronic, pgf tikz, timing diagramstikz-timing – Easy generation of timing diagrams as TikZ picturestikz-timingReadmeMartin Scharrer
diagrams, graphics, pgf tikztikz-trackschematic – A TikZ library for creating track diagrams in railwaystikz-trackschematicReadmeMartin Scheidt
pgf tikztikz-truchet – Draw Truchet tilestikz-truchetReadmeMatthew Scroggs
amusements, graphics, pgf tikzTikZbricks – Drawing bricks with TikZtikzbricksReadmesamcarter
pgf tikztikzcodeblocks – Helps to draw codeblocks like scratch, NEPO and PXT in TikZtikzcodeblocksReadmeAdrian Salamon
circuit diagram, electronic, graphics, pgf tikztikzdotncross – Small set of macros for defining/marking coordinates and crossing (jumps) pathstikzdotncrossReadmeAlceu Frigeri
amusements, graphics, pgf tikzTikZducks – A little fun package for using rubber ducks in TikZtikzducksReadmesamcarter
pgf tikztikzfill – TikZ libraries for filling with images and patternstikzfillReadmeThomas F. Sturm
amusements, graphics, pgf tikzTikZlings – A collection of cute little animals and similar creaturestikzlingsReadmesamcarter
amusements, graphics, pgf tikzTikZmarmots – Drawing little marmots in TikZtikzmarmotsReadmesamcarter
chemistry, diagramstikzorbital – Atomic and molecular orbitals using TikZtikzorbitalReadmeGermain Salvato-Vallverdu
comp net, pgf tikztikzpackets – Display network packetstikzpacketsReadmeRobert Paciorek
graphics, macro support, pgf tikztikzpagenodes – A single TikZ node for the whole pagetikzpagenodesReadmeMartin Scharrer
amusements, pgf tikztikzpeople – Draw people-shaped nodes in TikZtikzpeopleReadmeNils Fleischhacker
graphics symbolstikzpfeile – Draw arrows using PGF/TikZtikzpfeileReadmeJonathan Zachhuber, Michael Fütterer
amusements, graphics, pgf tikzTikZpingus – Penguins with TikZtikzpingusReadmeFlorian Sihler
class, postertikzposter – Create scientific posters using TikZtikzposterReadmeDirk Surmann, Elena Botoeva, Pascal Richter, Richard Barnard
circuit diagram, electronic, graphics, pgf tikztikzquads – A few shapes designed to be used with CircuiTikZtikzquadsReadmeAlceu Frigeri
graphics supptikzscale – Resize pictures while respecting text sizetikzscaleReadmePatrick Häcker
graphics symbols, pgf tikztikzsymbols – Some symbols created using TikZtikzsymbolsReadmeBen Vitecek
graphics, graphics plot, pgf tikz, statisticstikzviolinplots – Draws violin plots from datatikzviolinplotsReadmePedro Callil-Soares
maths, pgf tikztilings – A TikZ library for drawing tiles and tilingstilingsReadmeAndrew Stacey
pgf tikztipfr – Produces calculator’s keys with the help of TikZtipfrReadmePhilippe De Sousa
treetkz-bernoulli – Draw Bernoulli trees with TikZtkz-bernoulliReadmeCédric Pierquet
diagrams, pgf tikztkz-orm – Create Object-Role Model (ORM) diagramstkz-ormReadmeCamil Staps, Jakob Voß
linguistic, pgf tikz, phonetictoneval – Tool for linguists and phoneticians to visualize tone value patternstonevalReadmeYuanhao Chen
graphics, graphics plot function, maths, pgf tikztzplot – Plot graphs with TikZ abbreviationstzplotReadmeIn-Sung Cho
pgf tikz, symbol supportutfsym – Provides various Unicode symbolsutfsymReadmeDaniel Spittank
games, pgf tikzwordle – Create wordle gridswordleReadmeAndrew Mathas, Cédric Pierquet
circuit diagram, graphics, pgf tikzyquant – Typesetting quantum circuits in a human-readable languageyquantReadmeBenjamin Desef
graphics prepprerex – Interactive editor and macro support for prerequisite chartsprerexReadmeBob Tennent
colour, dvips special, graphics in tex, pstricks, xetexpstricks-base – PostScript macros for TeXpstricks-baseReadmeDenis Girou (inactive), Herbert Voß, Timothy Van Zandt (inactive)
pstricksdsptricks – Macros for Digital Signal Processing plotsdsptricksReadmePaolo Prandoni
diagrams, logic, philosophy, pstricksegpeirce – Draw existential graphs invented by Charles S. PeirceegpeirceReadmeJukka Nikulainen
csv support, humanitiespedigree-perl – Generate TeX pedigree files from CSV filespedigree-perlReadmeBoris Veytsman, Leila Akhmadeeva
humanities, pstrickspst-pdgr – Draw medical pedigrees using PSTrickspst-pdgrReadmeBoris Veytsman, Leila Akhmadeeva
gamespsbao – Draw Bao diagramspsbaoReadmeNino Vessella
games, pstrickspsgo – Typeset go diagrams with PSTrickspsgoReadmeVictor Bos
graphics plot, pstrickspst-2dplot – A PSTricks package for drawing 2D curvespst-2dplotReadmeFarshid Delgosha
3d graphics, graphics plot, pstrickspst-3dplot – Draw 3D objects in parallel projection, using PSTrickspst-3dplotReadmeHerbert Voß
diagrams, pstrickspst-am – Simulation of modulation and demodulationpst-amReadmeHerbert Voß, Manuel Luque
graphics, pstrickspst-antiprism – A PSTricks related package which draws an antiprismpst-antiprismReadmeHerbert Voß, Manuel Luque
pstrickspst-arrow – Special arrows for PSTrickspst-arrowReadmeHerbert Voß
linguistic, pstrickspst-asr – Typeset autosegmental representations for linguistspst-asrReadmeJohn Frampton
gen chart, pstrickspst-bar – Produces bar charts using PSTrickspst-barReadmeAlan Ristow, Herbert Voß
barcode, pstricks, qr codepst-barcode – Print barcodes using PostScriptpst-barcodeReadmeHerbert Voß, Terry Burton
curve graphics, pstrickspst-bezier – Draw Bezier curvespst-bezierReadmeHerbert Voß, Tobias Nähring
curve graphics, pstrickspst-bspline – Draw cubic Bspline curves and interpolationspst-bsplineReadmeMichael Sharpe
colour, pstrickspst-cie – CIE color spacepst-cieReadmeHerbert Voß, Manuel Luque
circuit diagram, pstrickspst-circ – PSTricks package for drawing electric circuitspst-circReadmeChristophe Jorssen (inactive), Herbert Voß
graphics plot function, pstrickspst-contourplot – Draw implicit functions using the “marching squares” algorithmpst-contourplotReadmeManuel Luque
maths, physics, pstrickspst-cox – Drawing regular complex polytopes with PSTrickspst-coxReadmeJean-Gabriel Luque
games, pstrickspst-dart – Plotting dart boardspst-dartReadmeHerbert Voß
diagrams, pstrickspst-dbicons – Support for drawing ER diagramspst-dbiconsReadmeWolfgang May
graphics use, physics, pstrickspst-diffraction – Print diffraction patterns from various aperturespst-diffractionReadmeHerbert Voß, Manuel Luque
graphics use, pstrickspst-electricfield – Draw electric field and equipotential lines with PSTrickspst-electricfieldReadmeHerbert Voß, Jürgen Gilg (deceased), Manuel Luque, Patrice Megrét
graphics prep, pstrickspst-eps – Create EPS files from PSTricks figurespst-epsReadmeHerbert Voß, Timothy Van Zandt (inactive)
graphics use, maths, pstrickspst-eucl – Euclidian geometry with PSTrickspst-euclReadmeDominique Rodriguez (inactive), Herbert Voß
listing, pstrickspst-exa – Typeset PSTricks examples, with codepst-exaReadmeHerbert Voß
physicspst-feyn – Draw graphical elements for Feynman diagramspst-feynReadmeHerbert Voß
graphics fill tile, pstrickspst-fill – Fill or tile areas with PSTrickspst-fillReadmeDenis Girou, Herbert Voß
graphics supppst-fit – Macros for curve fittingpst-fitReadmeBuddy Ledger, Herbert Voß
3d graphics, boxing, pstrickspst-fr3d – Draw 3-dimensional framed boxes using PSTrickspst-fr3dReadmeDenis Girou
graphics use, pstrickspst-fractal – Draw fractal sets using PSTrickspst-fractalReadmeHerbert Voß
graphics plot function, graphics use, maths, pstrickspst-func – PSTricks package for plotting mathematical functionspst-funcReadmeHerbert Voß
diagrams, gantt, pstrickspst-gantt – Draw GANTT charts with PSTrickspst-ganttReadmeDenis Girou, Herbert Voß
cartography, pstrickspst-geo – Geographical Projectionspst-geoReadmeGiuseppe Matarazzo, Herbert Voß, Manuel Luque
graphics use, maths, pstrickspst-geometrictools – A PSTricks package to draw geometric toolspst-geometrictoolsReadmeHerbert Voß, Thomas Söll
3d graphics, pstricks, typeset gridpst-gr3d – Three dimensional grids with PSTrickspst-gr3dReadmeDenis Girou, Herbert Voß
colour, pstrickspst-grad – Filling with colour gradients, using PSTrickspst-grad/Herbert Voß, Timothy Van Zandt (inactive)
colour, pstrickspst-hsb – Curves with continuous colourspst-hsb/Herbert Voß
graphics supp, pstrickspst-intersect – Compute intersections of arbitrary curvespst-intersectReadmeChristoph Bersch
linguistic, pstricks, treepst-Jtree – Typeset complex trees for linguistspst-jtreeReadmeJohn Frampton
decoration, pstrickspst-knot – PSTricks package for displaying knotspst-knotReadmeHerbert Voß
chemistry, graphics usepst-labo – Draw objects for Chemistry laboratoriespst-laboReadmeChristophe Jorssen, Denis Girou, Herbert Voß, Manuel Luque
optics, pstrickspst-lens – Lenses with PSTrickspst-lensReadmeDenis Girou, Herbert Voß, Manuel Luque
graphics use, pstrickspst-lsystem – Create images based on a L-systempst-lsystemReadmeHerbert Voß
physics, pstrickspst-magneticfield – Plotting a magnetic field with PSTrickspst-magneticfieldReadmeHerbert Voß, Jürgen Gilg (deceased), Manuel Luque
graphics, graphics use, pstrickspst-marble – A PSTricks package to draw marble-like patternspst-marbleReadmeAubrey Jaffer, Jürgen Gilg (deceased), Manuel Luque
graphics use, pstrickspst-mirror – Images on a spherical mirrorpst-mirrorReadmeHerbert Voß, Manuel Luque
graphics use, pstrickspst-moire – A PSTricks package to draw moiré patternspst-moireReadmeJean-Michel Sarlat, Jürgen Gilg (deceased), Manuel Luque
graphics in tex, linguisticpst-node – Nodes and node connections in PSTrickspst-nodeReadmeHerbert Voß, Michael Sharpe, Timothy Van Zandt (inactive)
3d graphics, graphics, pstrickspst-ob3d – Three dimensional objects using PSTrickspst-ob3dReadmeDenis Girou, Herbert Voß
labratory diagrams, optics, physics, pstrickspst-optexp – Drawing optical experimental setupspst-optexpReadmeChristoph Bersch
diagrams, optics, physics, pstrickspst-optic – Drawing optics diagramspst-opticReadmeHerbert Voß, Manuel Luque
graphics use, pstrickspst-osci – Oscgons with PSTrickspst-osciReadmeChristophe Jorssen, Manuel Luque
graphics use, pstrickspst-pad – Draw simple attachment systems with PSTrickspst-padReadmePatrick Drechsler
3d graphics, pstrickspst-perspective – Draw perspective views using PSTrickspst-perspectiveReadmeThomas Söll
3d graphics, maths, pstrickspst-platon – Platonic solids in PSTrickspst-platonReadmeHerbert Voß, Manuel Luque
data display, data import, pstrickspst-plot – Plot data using PSTrickspst-plotReadmeHerbert Voß, Timothy Van Zandt (inactive)
games, pstrickspst-poker – Drawing poker cardspst-pokerReadmeHerbert Voß
maths, pstrickspst-poly – Polygons with PSTrickspst-polyReadmeDenis Girou, Herbert Voß
diagrams, graphics use, physics, pstrickspst-pulley – Plot pulleys, using PSTrickspst-pulleyReadmeThomas Söll
treepst-qtree – Simple syntax for treespst-qtree/Daniel Gildea, David Chiang
pstrickspst-rputover – Place text over objects without obscuring background colorspst-rputoverReadmeMartin J. Osborne, Thomas Söll
graphics, pstrickspst-rubans – Draw three-dimensional ribbonspst-rubansReadmeHerbert Voß, Manuel Luque
colour, dvips special, graphics in tex, pstricks, xetexpst-shell – Plotting sea shellspst-shellReadmeHerbert Voß, Manuel Luque
engineering, physics, pstrickspst-sigsys – Support of signal processing-related disciplinespst-sigsysReadmeFarshid Delgosha
colour, pstrickspst-slpe – Sophisticated colour gradientspst-slpeReadmeHerbert Voß, Martin Giese
astronomy, pstrickspst-solarsystem – Plot the solar system for a specific datepst-solarsystemReadmeHerbert Voß, Manuel Luque
3d graphics, pstrickspst-solides3d – Draw perspective views of 3D solidspst-solides3dReadmeArnaud Schmittbuhl, Herbert Voß, Jean-Paul Vignault, Manuel Luque
graphics, pstrickspst-spinner – Drawing a fidget spinnerpst-spinnerReadmeHerbert Voß, Manuel Luque
engineering, graphics usepst-stru – Civil engineering diagrams, using PSTrickspst-struReadmeGiuseppe Matarazzo, Herbert Voß, Manuel Luque
graphics subpicpst-text – Text and character manipulation in PSTrickspst-textReadmeHerbert Voß, Timothy Van Zandt (inactive)
graphics subpicpst-thick – Drawing very thick lines and curvespst-thickReadmeHerbert Voß, Manuel Luque
graphics, pstrickspst-tools – PSTricks support functionspst-toolsReadmeHerbert Voß
linguistic, treepst-tree – Trees, using PSTrickspst-treeReadmeDenis Girou, Herbert Voß, Timothy Van Zandt (inactive)
graphics, pstrickspst-turtle – Commands for “turtle operations”pst-turtleReadmeHerbert Voß
pstricks, umlpst-uml – UML diagrams with PSTrickspst-umlReadmeMaurice Diamantini
decorationpst-vectorian – Printing ornamentspst-vectorianReadmePatrick Fradin
graphics use, maths, pstrickspst-vehicle – A PSTricks package for rolling vehicles on graphs of mathematical functionspst-vehicleReadmeThomas Söll Herbert Voß
math diagrams, pstrickspst-venn – A PSTricks package for drawing Venn setspst-vennReadmeHerbert Voß
graphics in tex, pstrickspstricks-add – A collection of add-ons and bugfixes for PSTrickspstricks-addReadmeDominique Rodriguez, Herbert Voß
graphics, graphics in texpxpic – Draw pixel picturespxpicReadmeJonathan P. Spratte
graphics importsketch – A 3d sketch language translatorsketchReadmeEugene K. Ressler
graphics in texsparklines – Drawing sparklines: intense, simple, wordlike graphicssparklinesReadmeAndreas Löffler, Daniel H. Luecking, Emil van Miltenburg (inactive)
graphics, graphics import, graphics includesvg – Include and extract SVG pictures in LaTeX documentssvgReadmeFalk Hanisch, Philip Ilten (inactive)
graphics in textexdraw – Graphical macros, using embedded PostScripttexdrawReadmePeter Kabal
documentation, documentation package, graphics documentationasy-overview – A brief overview of the Asymptote language for drawing mathematical graphicsasy-overviewReadmeJim Hefferon
chinese documentationasymptote-by-example-zh-cn – Asymptote by example Asymptote by exampleasymptote-by-example-zh-cnReadmeLeo Liu
chinese documentationasymptote-manual-zh-cn – A Chinese translation of the asymptote manualasymptote-manual-zh-cnReadmeLeo Liu
colour, documentationchroma – Chroma: a reference book of LaTeX colourschromaReadmeUwe Kern
chinese documentationcontext-notes-zh-cn – Notes on using ConTeXt MkIVcontext-notes-zh-cnReadmeYanrui Li
metapost documentation, tutorialDrawing-with-METAPOST – How to draw technical diagrams with METAPOSTdrawing-with-metapostReadmeToby Thurston
music, tutorial, tutorial latexLaTeX4Musicians – A guide for combining LaTeX and musiclatex4musiciansReadmeGuido Gonzato
documentation, facility surveysLaTeX4WP – A LaTeX guide specifically designed for word processor userslatex4wpReadmeGuido Gonzato
advertisementsLaTeX-brochure – A publicity flyer for LaTeXlatex-brochureReadmePeter Flynn
course material, tutorial latexlatex-course – A LaTeX course as a projected presentationlatex-courseReadmeEngelbert Buxbaum
chinese documentation, tutorial latexlshort-zh-cn – Introduction to LaTeX, in Chineselshort-zh-cnReadmeLouis Stuart, Xiangdong Zeng, Zhaopeng Xing (inactive)
maths documentation, tutorialvoss-mathcol – Typesetting mathematics in colour, in (La)TeXvoss-mathcol/Herbert Voß
chinese documentation, documentation, tutorialmathalphabets – Chinese introduction to mathematical alphabetsmathalphabetsReadmeConden Chao
review documentmemdesign – Notes on book designmemdesignReadmeLars Madsen, Peter R. Wilson
graphics prepsvg-inkscape – How to include an SVG image in LaTeX using Inkscapesvg-inkscapeReadmeJohan B. C. Engelen
font index, latex referenceThe Comprehensive LaTeX Symbol List – Symbols accessible from LaTeXcomprehensiveReadmeScott Pakin
font indexmaths-symbols – Summary of mathematical symbols available in LaTeXmaths-symbolsReadmeDavid Carlisle, Robin Fairbairns (deceased)
documentation, tutorial plaintexTeX-nutshelltex-nutshellReadmePetr Olšák
book source, latex reference, tutorial plaintexTeXbyTopic – Freed version of the book TeX by TopictexbytopicReadmeVictor Eijkhout
font documentationfontinstallationguide – Font installation guidefontinstallationguideReadmePhilipp Lehman (inactive)
faqvisualFAQ – A Visual LaTeX FAQvisualfaqReadmeScott Pakin
graphics documentation, graphics in tex, pstricksVisualPSTricks – Visual help for PSTricks based on images with minimum textvisualpstricksReadmeJean Pierre Casteleyn
book publication, chinese, classctex – LaTeX classes and packages for Chinese typesettingctexReadmeJiang Jiang (inactive), Leo Liu, Liam Huang, LingYun Wu (inactive), Qing Lee, Ruixi Zhang, Xiangdong Zeng, Yanrui Li (inactive), Yue Wang (inactive), Yukai Chou, Zeping Lee, Zhichu Chen (inactive)
chinesezhlineskip – Line spacing for CJK documentszhlineskipReadmeRuixi Zhang
chinese, cjk font, font usezhmCJK – Simplify configuration of CJK installations for ChinesezhmcjkReadmeLeo Liu
coptic, font, font type1, mf fontcbcoptic – Coptic fonts and LaTeX macros for general usage and for philologycbcopticReadmeClaudio Beccari, Serge Rosmorduc (inactive)
hebrew, omegaMakor 2 – Typeset pointed Hebrew using Omegamakor2/Alan Hoenig
chinese, japanesegckanbun – Kanbun typesetting for (u)pLaTeX and LuaLaTeXgckanbunReadmeMunehiro Yamamoto
book publication, contextcontext-collating-marks – Environment to place collating marks on the spine of a sectioncontext-collating-marksReadmeWilli Egger
context, csv supportcontext-handlecsv – Data merging for automatic document creationcontext-handlecsv/Jaroslav Hajtmar (inactive), Pablo Rodríguez
contextcontext-visualcounter – Visual display of ConTeXt counterscontext-visualcounter/Aditya Mahajan
musicbagpipe – Support for typesetting bagpipe musicbagpipeReadmeWalt Innis
colour, tablecolortab – Shade cells of tables and haligncolortab/Herbert Voß, Timothy Van Zandt (inactive)
commutative diagramsDCpic – Commutative diagrams in a LaTeX and TeX documentsdcpicReadmePedro Quaresma
diagramsxypic – Flexible diagramming macrosxypicReadmeKristoffer H. Rose (deceased), Ross Moore
treedirtree – Display trees in the style of windows explorerdirtreeReadmeJean-Côme Charpentier
letterformlett – Letters to multiple recipientsformlett/Zhuhan Jiang
boxing, decorationframe – Framed boxes for Plain TeXframeReadmeHerbert Voß, Timothy Van Zandt (inactive)
macro supportgates – Support for writing modular and customisable codegatesReadmePaul Isambert (inactive), Yuri Robbers
list, list support, tablehlist – Horizontal and columned listshlistReadmeChristian Tellechea
generic macros, logohologo – A collection of logos with bookmark supporthologoReadmeHeiko Oberdiek
text flowinsbox – Insert pictures/boxes into paragraphsinsbox/Michal Gulczynski
generic macros, multi-linguallangcode – Simple language-dependent settings based on language codeslangcodeReadmeUwe Lück (deceased)
bibliolibrarian – Tools to create bibliographies in TeXlibrarianReadmePaul Isambert
list, text maniplistofitems – Grab items in lists using user-specified sep charlistofitemsReadmeChristian Tellechea
generic macros, macro supportltxcmds – Some LaTeX kernel commands for general useltxcmdsReadmeHeiko Oberdiek
markupmarkdown – Converting and rendering markdown documents inside TeXmarkdownReadmeVít Starý Novotný
mathsmathdots – Commands to produce dots in math that respect font sizemathdotsReadmeDaniel H. Luecking
font development, measuremeasurebox – Precise measurements of glyphsmeasureboxReadmeSlurp
compilation, conditional compilation, external code, generic macros, graphicsMemoize – Externalization of graphics and memoization of compilation results in generalmemoizeReadmeSašo Živanović
musicMusiXTeX – Sophisticated music typesettingmusixtexReadmeAndreas Egler (inactive), Bob Tennent, Daniel Taupin (deceased), Don Simons, Hiroaki Morimoto, Jean-Pierre Coulon, Olivier Vogel, Ross Mitchell (inactive)
box manipulationpdf-trans – A set of macros for various transformations of TeX boxespdf-trans/Paweł Jackowski
generic macros, graphics symbols, maths symbolpdfMsym – PDF Math Symbols — various drawn mathematical symbolspdfmsymReadmeSlurp
mathsPetri-nets – A set TeX/LaTeX packages for drawing Petri netspetri-netsReadmeFranck Pommereau
generic macros, macro supportplainpkg – A minimal method for making generic packagesplainpkgReadmeUwe Lück (deceased)
arithmetic, calculation, e-tex, generic macros, mathspolexpr – A parser for polynomial expressionspolexprReadmeJean-François Burnol
calculation, randomrandom – Generating “random” numbers in TeXrandomReadmeDonald Arseneau
diagrams, generic macros, philosophy, theologyschemata – Print topical diagramsschemataReadmeCharles P. Schaum
key-valsimplekv – A simple key/value system for TeX and LaTeXsimplekvReadmeChristian Tellechea
letterspace, underlinesoul – Hyphenation for letterspacing, underlining, and moresoulReadmeHeiko Oberdiek
maths, maths system equations, simplifiedsysteme – Format systems of equationssystemeReadmeChristian Tellechea
environment query, sys supptex-locale – Localisation support for TeX and LaTeX documentstex-localeReadmeNicola Talbot
e-tex, macro supporttexapi – Macros to write format-independent packagestexapiReadmePaul Isambert (inactive), Yuri Robbers
date timetexdate – Date printing, formatting, and manipulation in TeXtexdateReadmeDonald P. Goodman
e-tex, unitstexdimens – Conversion of TeX dimensions to decimalstexdimensReadmeJean-François Burnol
generic macros, iterating macros, macro support, misc support, parsertokcycle – Build tools to process tokens from an input streamtokcycleReadmeSteven B. Segletes
class support, multi-lingual, package developmenttracklang – Language and dialect trackertracklangReadmeNicola Talbot
arithmetic, calculationxint – Expandable arbitrary precision floating point and integer operationsxintReadmeJean-François Burnol
treetree-dvips – Trees and other linguists’ macrostree-dvipsReadmeEmma Pease
indexmakeidx – Standard LaTeX package for creating indexesmakeidxReadmeThe LaTeX Project Team
class, presentationslides – Class for creating slidesslidesReadmeFrank Mittelbach, Rainer Schöpf, The LaTeX Project Team
maths, maths symbolabraces – Asymmetric over-/underbraces in mathsabracesReadmeWerner Grundlingh
layoutabspos – Absolute placement with coffinsabsposReadmeMagnus Lie Hetland
class, computer science, computer theory, engineering, journalacmart – Class for typesetting publications of ACMacmartReadmeBoris Veytsman
acronymacro – Typeset acronymsacroReadmeClemens Niederberger
font management, font useaddfont – Easier use of fonts without LaTeX supportaddfontReadmePalle Jørgensen
layout, multicolumnadjmulticol – Adjusting margins for multicolumn and single column outputadjmulticolReadmeBoris Veytsman
box breaking, box manipulation, typesettingadjustbox – Graphics package-alike macros for “general” boxesadjustboxReadmeMartin Scharrer
pseudocodealgorithm2e – Floating algorithm environment with algorithmic keywordsalgorithm2eReadmeChristophe Fiorio, Ivan Kokan
pseudocodealgpseudocodex – Package for typesetting pseudocodealgpseudocodexReadmeChristian Matt
maths, subsup positionaltsubsup – Subscripts and superscripts with square bracketsaltsubsupReadmeJulien Labbé
graphics motionanimate – Create PDF and SVG animations from graphics files and inline graphicsanimateReadmeAlexander Grahn
adobe distiller, pdf featuresannot-pro – Create text, stamp and file attachment annotationsannot-proReadmeDonald P. Story (deceased)
decoration, maths, pgf tikzannotate-equations – Easily annotate math equations using TikZannotate-equationsReadmeST John
alignment, alignment support, tablearraycols – New column types for array and tabular environmentsarraycolsReadmeAntoine Missier
dissertationArsClassica – A different view of the ClassicThesis packagearsclassicaReadmeLorenzo Pantieri
matrix, tableassociation-matrix – LaTeX support for creating association matricesassociation-matrixReadmeWhisperity
footnote, japaneseasternote – Annotation symbols enclosed in square brackets and marked with an asteriskasternoteReadmeYukoh Kusakabe
pdf featuresattachfile – Attach arbitrary files to a PDF documentattachfileReadmeScott Pakin
gen chart, pgf tikzbchart – Draw simple bar charts in LaTeXbchartReadmeTobias Kuhn
page head and foot, presentationhackthefootline – Footline selection and configuration for LaTeX beamer’s standard themeshackthefootlineReadmeSebastian Friedl
presentationspot – Spotlight highlighting for BeamerspotReadmeAnders O. F. Hendrickson
presentationbeamertheme-arguelles – Simple, typographic beamer themebeamertheme-arguellesReadmeMichele Piazzai
amusements, graphics, pgf tikzbearwear – Shirts to dress TikZbearsbearwearReadmeUlrike Fischer
gamesbg – Annotate backgammon matches and positionsbgReadmeJörg Richter
biblatex, qr codebib2qr – Cite BibTeX entries with QR codesbib2qrReadmeChristian Schreinemachers
biblatex, humanitiesarchaeologie – A citation-style which covers rules of the German Archaeological InstitutearchaeologieReadmeLukas C. Bossert
biblatex, licence managementbiblatex-license – Add license data to the bibliographybiblatex-licenseReadmeAnselm Wagner
biblatex, humanitiesbiblatex-manuscripts-philology – Manage classical manuscripts with BibLaTeXbiblatex-manuscripts-philologyReadmeMaïeul Rouquette
biblatex, humanities, philosophybiblatex-philosophy – Styles for using BibLaTeX for work in philosophybiblatex-philosophyReadmeIvan Valbusa
biblatexbiblatex-publist – BibLaTeX bibliography support for publication listsbiblatex-publistReadmeJürgen Spitzmüller
biblatexbiblatex-realauthor – Indicate the real author of a workbiblatex-realauthorReadmeMaïeul Rouquette
biblatex, bibliobiblatex-source-division – References by “division” in classical sourcesbiblatex-source-divisionReadmeMaïeul Rouquette
label and references, theologybibleref – Format bible citationsbiblerefReadmeMaïeul Rouquette, Nicola Talbot (inactive)
theologybibletext – Insert Bible passages by their referencebibletextReadmeCamil Staps
colourbiochemistry-colors – Colors used to display amino acids, nucleotides, sugars or atoms in biochemistrybiochemistry-colorsReadmeEngelbert Buxbaum
comp net, computer science, engineeringbitpattern – Typeset bit pattern diagramsbitpatternReadmeJean-Marc Bourguet
file cardbizcard – Typeset business cardsbizcard/Sebastian Marius Kirsch
typesettingblowup – Upscale or downscale all pages of a documentblowupReadmeRolf Niepraschk
box breaking, boxing, decorationboites – Boxes that may break across pagesboitesReadmeJosé Romildo Malaquias, Vincent Zoonekynd (inactive)
diagrams, pgf tikzbondgraphs – Draws bond graphs in LaTeX, using PGF/TikZbondgraphsReadmeGeert Folkertsma
class, coversbookcover – A class for book covers and dust jacketsbookcoverReadmeTibor Tómács
table, table rulebooktabs – Publication quality tables in LaTeXbooktabsReadmeDaniel Els, Simon Fear (inactive)
blank pageevenpage – Ensure that the total number of pages is evenevenpageReadmeFrancesco Bosisio
experimental latex3, maths, parentheses managementbracealign – Align braces under and over math expressionsbracealignReadmeJulien Labbé
comp net, computer science, engineeringbytefield – Create illustrations for network protocol specificationsbytefieldReadmeScott Pakin
date timecalcage – Calculate the age of something, in yearscalcageReadmeRobin Schneider
calculationcalctab – Language for numeric tablescalctabReadmeRoberto Giacomelli
maths, proofcalculation – Typesetting reasoned calculations, also called calculational proofscalculationReadmeMaarten Fokkinga
calculation, mathscalculator – Use LaTeX as a scientific calculatorcalculatorReadmeRobert Fuster
geometrycanoniclayout – Create canonical page layouts with memoircanoniclayoutReadmeClaudio Beccari
captionbicaption – Support for bilingual captionsbicaptionReadmeAxel Sommerfeldt
captionsubcaption – Support for sub-captionssubcaptionReadmeAxel Sommerfeldt
Chemistry Diagramscarbohydrates – Carbohydrate molecules with chemfigcarbohydratesReadmeClemens Niederberger
theologycatechis – Macros for typesetting catechismscatechisReadmeDonald P. Goodman
logoCClicenses – Typeset Creative Commons licence logoscclicensesReadmeGianluca Pignalberi
coverscdcover – Typeset CD coverscdcoverReadmeChristian Holm Christensen
tablecellprops – Accept CSS-like selectors in tabular, array, …cellpropsReadmeJulien Rivaud
securitycensor – Tools for producing redacted documentscensorReadmeSteven B. Segletes
decor font, font supportcfr-initials – LaTeX packages for use of initialscfr-initialsReadmeClea F. Rees
geometry adjustchangelayout – Change the layout of individual pages and their textchangelayoutReadmeAhmed Musa
document tool, editorialchanges – Manual change markupchangesReadmeEkkart Kleinod
chemistrychemformula – Command for typesetting chemical formulas and reactionschemformulaReadmeClemens Niederberger
chemistrychemschemex – Typeset and cross-reference chemical schemes based on TikZ codechemschemexReadmeDominik Siegel
gameschess-problem-diagrams – A package for typesetting chess problem diagramschess-problem-diagramsReadmeStefan Hoening
gameschessboard – Print chess boardschessboardReadmeUlrike Fischer
font support, gameschessfss – A package to handle chess fontschessfssReadmeUlrike Fischer
chinese, gameschinesechess – Typeset Chinese chess with l3drawchinesechessReadmeNan Geng
calendar, pgf tikz, planningchronology – Provides a horizontal timelinechronologyReadmeBen Armacost, Levi Wiseman (inactive)
diagramschronosys – Drawing time-line diagramschronosysReadmeMathieu Long
numberscircledsteps – Typeset circled numberscircledstepsReadmeRomano Giannetti
graphics symbolscircledtext – Create circled textcircledtextReadmeNan Geng
cite supportciteright – Specify accurate natbib citations for diverse naming conventionsciterightReadmeJason Overfelt
cite support, humanitiesclassics – Cite classic worksclassicsReadmeEduardo C. Lourenço de Lima
dissertationClassicThesis – A “classically styled” thesis packageclassicthesisReadmeAndré Miede
quotation importclipboard – Copy and paste into and across documentsclipboardReadmeEduardo C. Lourenço de Lima
colourclrstrip – Place contents into a full width colour stripclrstripReadmeJonathan P. Spratte
documentation supportcodedoc – LaTeX code and documentation in LaTeX-format filecodedocReadmePaul Isambert (inactive), Yuri Robbers
listing, syntax highlight, use luatexcodehigh – Highlight code and demos with l3regex and lpegcodehighReadmeJianrui Lyu
typeset toolcolophon – Provides commands for producing a colophoncolophonReadmeDonald P. Goodman
colour, typesettingcolorblind – Easy colorblind-safe typesettingcolorblindReadmeSimon Pfahler
decorationcolorframed – Fix color problems with the package “framed”colorframedReadmeJean-François Burnol
colourcolorspace – Provides PDF color spacescolorspaceReadmeJavier Bezos López
colour, tablecolortbl – Add colour to LaTeX tablescolortblReadmeDavid Carlisle
colour, decorationcontour – Print a coloured contour around textcontourReadmeHarald Harders (inactive), Morten Høgholm
editorialcoop-writing – Support for Cooperative Writing and editorial commentscoop-writingReadmeGeraldo Xexéo
graphics in texlogsys – Draw logarithmic coordinate systemslogsysReadmeMogens Lemvig Hansen
typesettingcopyrightbox – Provide copyright notices for images in a documentcopyrightboxReadmeIves van der Flaas
boxing, decoration, typesettingcrbox – Boxes with crossed cornerscrboxReadmeVafa Khalighi, bidi-tex GitHub Organisation
label and referencescrefthe – Cross referencing with proper definite articles and declensionscreftheReadmeJinwen XU
layout pagecrop – Support for cropmarkscropReadmeMelchior Franz (inactive), Reuben Thomas
colourcss-colors – Named colors for web-safe designcss-colorsReadmeEngelbert Buxbaum
csv support, data display, data importcsvsimple – Simple CSV file processingcsvsimpleReadmeThomas F. Sturm
cookingcuisine – Typeset recipescuisineReadmeBen Cohen
curve graphics, graphics in texcurves – Curves for LaTeX picture environmentcurvesReadmeIan Maclaine-Cross
text flowcutwin – Cut a window in a paragraph, typeset material in itcutwinReadmeAlan Hoenig, David Carlisle, Peter R. Wilson (inactive)
boxingdashbox – Draw dashed boxesdashbox/Reuben Thomas
data manipulation, label and referencesdataref – Manage references to experimental datadatarefReadmeChristian Dietrich
data display, data import, data manipulationdatatool – Tools to load and manipulate datadatatoolReadmeNicola Talbot
data importdatax – Import individual data from script filesdataxReadmeDavid Gustavsson
date time, multi-lingualdatetime2 – Formats for dates, times and time zonesdatetime2ReadmeNicola Talbot
data display, data preparation, data selectiondbshow – A package to store and display data with custom filters, orders, and stylesdbshowReadmeChangkai Li
diagrams, music, pgf tikzddphonism – Dodecaphonic diagrams: twelve-tone matrices, clock diagrams, etcddphonismReadmeCelia Rubio Madrigal
notesdebate – Debates between reviewersdebateReadmeYegor Bugayenko
diagrams, planning, tabledecision-table – An easy way to create Decision Model and Notation decision tablesdecision-tableReadmeFrançois Pantigny, Simon Vandevelde
mathsderivative – Nice and easy derivativesderivativeReadmeSimon Jensen
data display, document templatediabetes-logbook – A logbook for people with type one diabetesdiabetes-logbookReadmeViktor Grigorov
data displaydiadia – Package to keep a diabetes diarydiadiaReadmeJosef Kleber
tablediagbox – Table heads with diagonal linesdiagboxReadmeLeo Liu
commutative diagrams, graphics in texdiagmac2 – Diagram macros, using pict2ediagmac2ReadmeBob Tennent, John Reynolds (inactive)
macro supportdialogl – Macros for constructing interactive LaTeX scriptsdialoglReadmeMichael J. Downes (deceased)
adobe distiller, captiondigicap-pro – Creates captions to digital photosdigicap-proReadmeDonald P. Story (deceased)
automata, mathsdijkstra – Dijkstra algorithm for LaTeXdijkstraReadmeChristian Tellechea
diagramsditaa – Use ditaa diagrams within LaTeX documentsditaaReadmeHiroshi Ukai
mol biodnaseq – Format DNA base sequencesdnaseqReadmeBjørn Pedersen
licence managementdoclicense – Support for putting documents under a licensedoclicenseReadmeRobin Schneider
documentation supportdocshots – TeX samples next to their PDF snapshotsdocshotsReadmeYegor Bugayenko
external codedownload – Allow LaTeX to download files using an external processdownloadReadmeSimon Sigurdhsson
editorialdraftcopy – Identify draft copiesdraftcopyReadmeJürgen Vollmer
comp supp, editorial, layoutdraftfigure – Replace figures with a white box and additional featuresdraftfigureReadmeLukas C. Bossert
editorialdraftmark – Put draft marks on selected pagesdraftmarkReadmeAhmed Musa
editorial, watermarkdraftwatermark – Put a grey textual watermark on document pagesdraftwatermarkReadmeSergio Callegari
matrixdrawmatrix – Draw visual representations of matrices in LaTeXdrawmatrixReadmeElmar Peise
amusements, games, graphicsducksay – Draw ASCII art of animals saying a specified messageducksayReadmeJonathan P. Spratte
dummy generator, macro supportduckuments – Create duckified dummy contentduckumentsReadmeJonathan P. Spratte
catalogue, classdvdcoll – A class for typesetting DVD archivesdvdcollReadmeJosef Kleber
linguisticdvgloss – Facilities for setting interlinear glossed textdvglossReadmeDan Bridges Velleman
barcode, std conformean13isbn – Print EAN13 for ISBNean13isbnReadmeZdeněk Wagner
dummy generatoreconlipsum – Generate sentences from economic articleseconlipsumReadmeJack Coleman
boxingefbox – Extension of \fbox, with controllable frames and coloursefboxReadmeJosé Romildo Malaquias
circuit diagrameltex – Simple circuit diagrams in LaTeX picture modeeltexReadmeLibor Gajdosik
cardselzcards – Typeset business cards, index cards and flash cards easilyelzcardsReadmeEmilio Augusto Lazo Zaia
typesettingemarks – Named mark registers with e-TeXemarksReadmeFlorent Chervet
archival, pdf featuresembedall – Embed source files into the generated PDFembedallReadmeAlberto Sartori, David Lichti
pdf featuresembedfile – Embed files into PDFembedfileReadmeHeiko Oberdiek
graphics, graphics useemo – Emoji for all (LaTeX engines)emoReadmeRobert Grimm
endnoteenotez – Support for end-notesenotezReadmeClemens Niederberger
exercise, experimental latex3, list, list enumumerate, tagged pdfenumext – Enumerate exercise sheetsenumextReadmePablo González Luengo
listenumitem – Control layout of itemize, enumerate, descriptionenumitemReadmeJavier Bezos López
epigramepigraph-keys – Epigraphs using key valuesepigraph-keysReadmeBenjamin McKay
epigramepigraph – A package for typesetting epigraphsepigraphReadmePeter R. Wilson (inactive), Will Robertson
e-tex, toc etcetoc – Completely customisable TOCsetocReadmeJean-François Burnol
graphics, mathseuclideangeometry – Draw geometrical constructionseuclideangeometryReadmeClaudio Beccari
class, examexam – Package for typesetting exam scriptsexamReadmePhilip S. Hirschhorn
exerciseexercises – Typeset exercises and solutions with automatic addition of pointsexercisesReadmeRoger Jud
class, exam, exercise, teachingexesheet – Typesetting exercise or exam sheetsexesheetReadmeAntoine Missier
exam, exerciseexframe – Framework for exercise problemsexframeReadmeNiklas Beisert
list describedexpdlist – Expanded description environmentsexpdlistReadmeRainer Hülse, Wolfgang Kaspar
editorialextract – Extract parts of a document and write to another documentextractReadmeHendri Adriaens (inactive)
editorial, notesezedits – Commands for tracking document changes and notesezeditsReadmeJoseph A. Smiga
background, graphics include, pgf tikzFadingImage – Add full width fading pictures at the top or bottom of a pagefadingimageReadmeMingyu Xia
diagrams, genealogy, treefamilytree – Draw family treesfamilytreeReadmeJiro Senju
boxingfancybox – Variants of \fbox and other games with boxesfancyboxReadmeTimothy Van Zandt
page head and footfancyhdr – Extensive control of page headers and footers in LaTeX2εfancyhdrReadmePieter van Oostrum
chemistry, label and referencesfancylabel – Complex labelling with LaTeXfancylabelReadmeDominik Siegel
decorationfancypar – Decoration of individual paragraphsfancyparReadmeGonzalo Medina Arellano
boxingfbox – Extended \fbox macro from standard LaTeXfboxReadmeHerbert Voß
tablefcolumn – Typesetting financial tablesfcolumnReadmeEdgar Olthof
line nos, listing, verbatimffcode – Fixed-font code blocks formatted nicelyffcodeReadmeYegor Bugayenko
misc supportfgruler – Draw rulers on the foreground or in the textfgrulerReadmeTibor Tómács
graphicsFigSize – Auto-size graphicsfigsizeReadmeAnthony A. Tanbakuchi
document Managementreadprov – Provides GetFileInfo without the need to load the filereadprovReadmeUwe Lück (deceased)
blank pagefillpages – Fill up the page count to a certain number (e.g. divisible by 4)fillpagesReadmeGabriel Ruprecht
exercise, leaders, teachingfillwith – Fill vertical space with solid rules or dotted linesfillwithReadmeClea F. Rees
dummy generator, macro support, spanishfistrum – Access to 150 paragraphs of Lorem Fistrum very dummy textfistrumReadmeDavid Davó
boxingfitbox – Fit graphics on a pagefitboxReadmeBoris Veytsman
adobe distiller, pdf forms, visual supportFitR – Set a rectangular destination and jump to itfitrReadmeDonald P. Story (deceased)
editorial, notesFiXme – Collaborative annotation tool for LaTeXfixmeReadmeDidier Verna
labelsflabels – Labels for files and foldersflabelsReadmeVolker Börchers
class, flash cardflacards – Generate flashcards for printingflacardsReadmeNorbert Stuhrmann
mathsflagderiv – Flag style derivation packageflagderivReadmePaul van Tilburg
flash cardflashcards – A class for typesetting flashcardsflashcardsReadmeAlexander M. Budge (inactive), Matthew Vernon
marginalflexipage – Flexible page geometry with marginaliaflexipageReadmeAnton Vrba
footnotefnpct – Manage footnote marks’ interaction with punctuationfnpctReadmeClemens Niederberger
numbers, page nosfoliono – Use folio numbers to replace page numbersfolionoReadmeTommi Syrjänen
font supp miscfontsize – A small package to set arbitrary sizes for the main font of the documentfontsizeReadmeIvan Valbusa
form fillinformular – Create forms containing field for manual entryformularReadmeHans-Christoph Wirth
decorationfroufrou – Fancy section separatorsfroufrouReadmeNelson Lago
layoutfullminipage – Minipage spanning a complete pagefullminipageReadmeChristian Schneider
latex3, macro supportfunctional – An intuitive functional programming interface for LaTeX2functionalReadmeJianrui Lyu
font supportfundus-pvscript – Support for Vanroose handwriting fontfundus-pvscript/Gerd Neugebauer
gamesgamebook – Typeset gamebooks and other interactive novelsgamebookReadmeAndré Miede
mathsgauss – A package for Gaussian operationsgaussReadmeManuel Kauers
crossword puzzle, gamescrossword – Typeset crossword puzzlescrosswordReadmeGerd Neugebauer
3d graphicsproductbox – Typeset a three-dimensional product boxproductboxReadmeGerd Neugebauer
genealogy, humanities, pgf tikzgenealogytree – Pedigree and genealogical tree diagramsgenealogytreeReadmeThomas F. Sturm
geometrygeometry – Flexible and complete interface to document dimensionsgeometryReadmeDavid Carlisle, Hideo Umeki
file managementgetfiledate – Find the date of last modification of a filegetfiledateReadmeAhmed Musa
cartographygetmap – Download OpenStreetMap maps for use in documentsgetmapReadmeJosef Kleber
chemistry, experimental latex3ghsystem – Globally harmonised system of chemical (etc) namingghsystemReadmeClemens Niederberger
document management, version controlgitinfo2 – Access metadata from the git distributed version control systemgitinfo2ReadmeBrent Longborough (deceased), The LaTeX Project Team
document management, version controlgitlog – Typesetting git changelogsgitlogReadmeBrent Longborough (deceased), The LaTeX Project Team
decoration, watermarkgitstatus – Include Git information in the document as watermark or via variablesgitstatusReadmeMaximilian Gruber
document management, version controlgitver – Get the current git hash of a project and typeset it in the documentgitverReadmeCharles Baynham
acronym, glossaryglossaries – Create glossaries and lists of acronymsglossariesReadmeNicola Talbot
colourgradient-text – Decorate text with linear gradient colorsgradient-textReadmeSicheng Du
decorationgradientframe – Simple gradient frames around objectsgradientframeReadmeChristian Raue
tablegrading-scheme – Typeset grading schemes in tabular formatgrading-schemeReadmeMaximilian Keßler
graphics, graphics includegraphbox – Extend graphicx to improve placement of graphicsgraphboxReadmeNiklas Beisert
graphics includegraphicxpsd – Adobe Photoshop Data format (PSD) support for graphicx packagegraphicxpsdReadmeMunehiro Yamamoto
adobe distiller, misc support, pdf formsgrayhints – Produce ‘gray hints’ to a variable text fieldgrayhintsReadmeDonald P. Story (deceased)
layoutgrid-system – Page organisation, modelled on CSS facilitiesgrid-systemReadmeMarcus Bitzl
typeset gridgrid – Grid typesetting in LaTeXgridReadmeRiver Valley Technologies
background, pgf tikzgridpapers – Graph paper backgrounds and color schemesgridpapersReadmeLeo Stein, Robert McNees
chords, musicgtrcrd – Add chords to lyricsgtrcrdReadmeRiccardo Bresciani
genealogygtrlib.largetrees – Library for genealogytree aiming at large treesgtrlib.largetreesReadmeRichard Grewe
chords, musicguitarchordschemes – Guitar Chord and Scale TablaturesguitarchordschemesReadmeClemens Niederberger
chords, class, musicguitartabs – A class for drawing guitar tablatures easilyguitartabsReadmeAndrey Babushkin
presentationhandout – Create handout for auditors of a talkhandoutReadmeMaïeul Rouquette
presentationhandoutWithNotes – Create Handouts with notes from your LaTeX beamer presentationhandoutwithnotesReadmeGuido Diepen, Marei Peischl
layouthanging – Hanging paragraphshangingReadmePeter R. Wilson (inactive), Will Robertson
layouthardwrap – Hard wrap text to a certain character lengthhardwrapReadmeKevin Godby, Will Robertson
games, pgf tikzhavannah – Diagrams of board positions in the games of Havannah and HexhavannahReadmeMarcin Ciura
typesettinghe-she – Alternating pronouns to aid gender-neutral writinghe-sheReadmeAlan Munn
label and referenceshereapplies – A LaTeX package for referencing groups of pages that share something in commonhereappliesReadmemadmurphy
decoration, pgf tikzhighlightx – Highlight formulas or paragraphshighlightxReadmeCédric Pierquet
astrologyhoroscop – Generate astrological charts in LaTeXhoroscopReadmeMatthew Skala
hyper, underline, verbatimhref-ul – Underscored LaTeX hyperlinkshref-ulReadmeYegor Bugayenko
hyperhrefhide – Suppress hyper links when printinghrefhideReadmeHans-Martin Münch
comp supp, external code, image supporthvextern – Write and execute external code, and insert the outputhvexternReadmeHerbert Voß
box manipulation, floathvfloat – Controlling captions, fullpage and doublepage floatshvfloatReadmeHerbert Voß
qr codehvqrurl – Insert a QR code in the marginhvqrurlReadmeHerbert Voß
hyperhypdvips – Hyperref extensions for use with dvipshypdvipsReadmeRaimund Niedrist
environment queryifplatform – Conditionals to test which platform is being usedifplatformReadmeJohannes Große, Will Robertson
class, graphics useimage-gallery – Create an overview of pictures from a digital camera or from other sourcesimage-galleryReadmeRolf Niepraschk
graphics includeinlinegraphicx – Insert inline images, with automatic size/positioninginlinegraphicxReadmeCédric Pierquet
graphics motioninteractiveanimation – Create PDF files with branching animationsinteractiveanimationReadmeJavier Toro, Luis Gonzáles, Pedro Linares
package supportinterfaces – Set parameters for other packages, convenientlyinterfacesReadmeFlorent Chervet
invoiceinvoice2 – Intelligent invoices with LaTeX3invoice2ReadmeSimon Dierl
csv support, invoiceinvoice-class – Produces a standard US invoice from a CSV fileinvoice-classReadmeAlan Munn
invoiceinvoice – Generate invoicesinvoiceReadmeOliver Corff
rotationisorot – Rotation of document elementsisorotReadmePeter R. Wilson
typeset standardisosafety – Provides ISO signs and colors according to the standards 7010 and 3864isosafetyReadmeBen Steinhauer
cards, games, pgf tikzJeuxCartes – Macros to insert playing cardsjeuxcartesReadmeCédric Pierquet
box manipulationjoinbox – Join boxes vertically or horizontallyjoinboxReadmeNan Geng
data manipulationjsonparse – Parse, store and access JSON data in LaTeX documentsjsonparseReadmeJasper Habicht
journal, luatexjumplines – Articles with teasers and continuation later onjumplinesReadmeChristian Hupfer
calendar, latex3kalendarium – Print dates according to the classical Latin calendarkalendariumReadmeAndrew Smith
chinese, japanese, use luatexkanbun – Typeset kanbun-kundoku with support for kanbun annotationkanbunReadmeYuanhao Chen
dummy generator, macro supportkantlipsum – Generate sentences in Kant’s stylekantlipsumReadmeEnrico Gregorio
engineering, mathskarnaugh – Typeset Karnaugh-Veitch-mapskarnaugh/Andreas W. Wieland
class, covers, document template, std conformkdpcover – Covers for books published by Kindle Direct PublishingkdpcoverReadmeYegor Bugayenko
font developmentkerntest – Print tables and generate control files to adjust kerningskerntestReadmeHarald Harders (inactive)
key-valkeycommand – Simple creation of commands with key-value argumentskeycommandReadmeFlorent Chervet
floatkeyfloat – Provides a key/value interface for generating floatskeyfloatReadmeBrian Dunn
indexkeyindex – Index entries by key lookupkeyindexReadmeRichard Zach
documentation supportkeystroke – Graphical representation of keys on keyboardkeystrokeReadmeRolf Niepraschk
key-valkeyval2e – A lightweight and robust key-value parserkeyval2eReadmeAhmed Musa
tablekeyvaltable – Re-usable table layouts separating content and presentationkeyvaltableReadmeRichard Grewe
index, label and referencesknowledge – Displaying, hyperlinking, and indexing notions in a documentknowledgeReadmeThomas Colcombet
engineering, mathskvmap – Create Karnaugh maps with LaTeXkvmapReadmeBen Frank
gameslabyrinth – Draw labyrinths and solution pathslabyrinthReadmeFrancesco Zigliotto
abbreviations, linguisticlangnames – Name languages and their genetic affiliations consistentlylangnamesReadmeAlejandro García Matarredona, निरंजन
graphics in texlapdf – PDF drawing directly in TeX documentslapdfReadmeDetlef Reimers
label and referenceslastpage – Reference last page for Page N of M type footerslastpageReadmeHans-Martin Münch, Jeffrey Goldberg (inactive)
colourlatexcolors – Use color definitions from latexcolor.comlatexcolorsReadmeTobias Plüss
document management, version controlLaTeXgit – A LaTeX git wrapperlatexgitReadmeCamil Staps
graphics in texlcd – Alphanumerical LCD-style displayslcdReadmeMike Kaufmann
layout, typesettingleading – Define leading with a lengthleadingReadmeWill Robertson
chords, musicleadsheets – Typesetting leadsheets and songbooksleadsheetsReadmeClemens Niederberger
class, layoutleaflet – Create small handouts (flyers)leafletReadmeHubert Gäßlein, Jürgen Schlegelmilch (inactive), Rolf Niepraschk, Walter A. Schmidt (deceased)
linguisticleipzig – Typeset and index linguistic gloss abbreviationsleipzigReadmeNatalie Weber
lettrinelettrine – Typeset dropped capitalslettrineReadmeDaniel Flipo
chemistrylewis – Draw Lewis structureslewisReadmeKent Horvath
musicliederbuch – A LaTeX package for storing songs or other content, and repeated reuse in documentsliederbuchReadmeGabriel Ruprecht
class, cvlimecv – A (Xe/Lua)LaTeX document class for curriculum vitælimecvReadmeOlivier Pieters
calculation, mathslinearregression – Calculate and display linear regressionslinearregressionReadmeBattista Benciolini
line nos, typesettinglineno – Line numbers on paragraphslinenoReadmeKarl Wette, Stephan Böttcher (inactive), Uwe Lück (deceased)
linguisticling-macros – Macros for typesetting formal linguisticsling-macrosReadmeAndrew McKenzie
linguistic, treelingtrees – Linguistics trees preprocessor and macroslingtreesReadmeAvery D Andrews
linguistic, treelinguex – Format linguists’ exampleslinguexReadmeWolfgang Sternefeld
dummy generator, macro support, multi-linguallipsum – Easy access to the Lorem Ipsum and other dummy textslipsumReadmePatrick Happel (inactive), Phelype Oleinik
listing, macro demonstration, syntax highlight, verbatimlistings – Typeset source code listings using LaTeXlistingsReadmeBrooks Moses (inactive), Carsten Heinz (inactive), Jobst Hoffmann
macro supportlmake – Process lists to do repetitive actionslmakeReadmeShengjun Pan
logiclogicproof – Box proofs for propositional and predicate logiclogicproofReadmeAlan Davidson
diagramslogpap – Generate logarithmic graph paper with LaTeXlogpapReadmeMike Kaufmann
boxing, decorationlongfbox – Draw framed boxes with standard CSS attributes that can break over multiple pageslongfboxReadmeDaan Leijen
comp netlsc – Typesetting Live Sequence ChartslscReadmeBernd Westphal
multimedia, pdf featuresltx4yt – Play YouTube videos in the default browserltx4ytReadmeDonald P. Story (deceased)
background, pgf tikz, watermarkmagicwatermark – An easy and flexible way to set watermarksmagicwatermarkReadmeLijun Guo
mailingmailing – Macros for mail mergingmailingReadmeJohannes L. Braams
mailingmailmerge – Repeating text field substitutionmailmergeReadmeMiguel Vinícius Santini Frasson
barcodemakebarcode – Print various kinds 2/5 and Code 39 bar codesmakebarcodeReadmeZdeněk Wagner
tablemakecell – Tabular column heads and multilined cellsmakecellReadmeOlga Lapko (inactive)
listing, syntax highlightmaker – Include Arduino or Processing code in LaTeX documentsmakerReadmeFausto Mauricio Lagos Suárez
cite support, marginalmargbib – Display bibitem tags in the marginsmargbib/Karsten Tinnefeld (inactive)
marginalmarginfit – Improved margin notesmarginfitReadmeMaurice Leclaire
marginalmarginfix – Patch \marginpar to avoid overfull marginsmarginfixReadmeStephen Hicks
notesmarginnote – Notes in the margin, even where \marginpar failsmarginnoteReadmeMarkus Kohm (inactive)
mathsmathpartir – Typesetting sequences of math formulas, e.g. type inference rulesmathpartirReadmeDidier Remy
mathsmathtools – Mathematical tools to use with amsmathmathtoolsReadmeJoseph Wright (inactive), Lars Madsen, Morten Høgholm (inactive), The LaTeX Project Team, Will Robertson (inactive)
listingmatlab-prettifier – Pretty-print Matlab source codematlab-prettifierReadmeJulien Cretel
engineering, mathsmattens – Matrices/tensor typesettingmattensReadmeDaniel Els
gamesmaze – Generate random mazesmazeReadmeSicheng Du
box breaking, boxing, decorationmdframed – Framed environments that can split at page boundariesmdframedReadmeElke Schubert, Marco Daniel
tablemdwtab – A reimplementation of tabular and array environmentsmdwtabReadmeMark Wooding
book publication, classmemoir – Typeset fiction, non-fiction and mathematical booksmemoirReadmeLars Madsen, Peter R. Wilson (inactive)
class, cookingmensa-tex – Typeset simple school cafeteria menusmensa-texReadmeSebastian Friedl
documentation supportmenu – Typesetting menusmenuReadmeKnut Lickert
documentation supportmenukeys – Format menu sequences, paths and keystrokes from listsmenukeysReadmeJonathan P. Spratte, Tobias Weh
cartography, graphics, pgf tikzmercatormap – Spherical Mercator coordinate systems and Web Mercator tile integrationmercatormapReadmeThomas F. Sturm
document managementmessagebubbles – Display message bubbles as a conversationmessagebubblesReadmeSimon Harrer
licence management, metadata, stringmetastr – Store and compose stringsmetastrReadmeNiklas Beisert
latin, versemetrix – Typeset metric marks for Latin textmetrixReadmeTobias Weh
macro support, text manipmfirstuc – Uppercase the first letter of a wordmfirstucReadmeNicola Talbot
chemistry, safety noticemhchem – Typeset chemical formulae/equations and H and P statementsmhchemReadmeMartin Hensel
mathsmhequ – Multicolumn equations, tags, labels, sub-numberingmhequReadmeMartin Hairer
letterspace, micro layoutmicrotype – Subliminal refinements towards typographical perfectionmicrotypeReadmeRobert Schlicht
notesmindflow – Write your ideas in a clear waymindflowReadmeJinwen XU
boxingminibox – A simple type of box for LaTeXminiboxReadmeWill Robertson
subdocsminidocument – Creates miniature documents inside other LaTeX documentsminidocumentReadmeMaurice Leclaire
toc etcminitoc – Produce a table of contents for each chapter, part or sectionminitocReadmeJean-Pierre Drucbert (deceased)
listing, syntax highlight, verbatimminted – Highlighted source code for LaTeXmintedReadmeGeoffrey Poore, Konrad Rudolph (inactive)
meeting adminminutes – Typeset the minutes of meetingsminutesReadmeKnut Lickert
mathsmlist – Logical markup for listsmlistReadmeWill Robertson
class, postermodernposter – A modern LaTeX poster thememodernposterReadmeDavid Derler
chemistry, diagramsmodiagram – Drawing molecular orbital diagramsmodiagramReadmeClemens Niederberger
exammoodle – Generating Moodle quizzes via LaTeXmoodleReadmeAnders O. F. Hendrickson (inactive), Matthieu Guerquin-Kern
list enumumerate, numbersmoreenum – More enumeration optionsmoreenumReadmeSeamus Bradley
linguistic, pgf tikzmovement-arrows – Drawing movement arrows on linguistic example sentencesmovement-arrowsReadmeAlan Munn
multimedia, obsoletemovie15 – Multimedia inclusion packagemovie15ReadmeAlexander Grahn
comp net, pgf tikzmsc – Draw MSC diagramsmscReadmeReynaldo Gil Pons, Sjouke Mauw (inactive), Ton van Deursen (inactive), Victor Bos (inactive)
conditional compilationmultiaudience – Several versions of output from the same sourcemultiaudienceReadmeBoris Veytsman
decoration, line pattern, line weight, rulemulticolrule – Decorative rules between columnsmulticolruleReadmeKarl Hagen
footnotemultifootnote – Multiple numbers for the same footnotemultifootnoteReadmeJinwen XU
multi-lingualmultilang – A LaTeX package for maintaining multiple translations of a documentmultilangReadmeRichard Grewe
exammultiple-choice – LaTeX package for multiple-choice questionsmultiple-choiceReadmeSeiied-Mohammad-Javad Razavian
tablemultirow – Create tabular cells spanning multiple rowsmultirowReadmeJerry Leichter (inactive), Pieter van Oostrum
toc etcmultitoc – Set table of contents in multiple columnsmultitocReadmeMarei Peischl, Martin Schröder (inactive)
drama script, musicmusical – Typeset (musical) theatre scriptsmusicalReadmeDave Howell
font supp symbol, musicmusicography – Accessing symbols for music writing with pdfLaTeXmusicographyReadmeAndrew A. Cashner
maths, puzzlemusikui – Easy creation of “arithmetical restoration” puzzlesmusikuiReadmeNaoki Kaneko
musicmusixguit – Easy notation for guitar music, in MusixTeXmusixguitReadmeClemens Niederberger
debug suppmwe – Packages and image files for MWEsmweReadmeMartin Scharrer
bibtex supportnatbib – Flexible bibliography supportnatbibReadmeArthur Ogawa, Patrick W. Daly
magazinenewspaper – Typeset newsletters to resemble newspapersnewspaperReadmeDavid Griffith, Matthew Allen (inactive)
document Managementnicefilelist – Provide \listfiles alignmentnicefilelistReadmeUwe Lück (deceased)
colourninecolors – Select colors with proper WCAG color contrastninecolorsReadmeJianrui Lyu
bibtex supportnmbib – Multiple versions of a bibliography, with different sort ordersnmbibReadmeBoris Veytsman
font support, typesettingnodepthtext – Change small texts to remove the depth of the lettersnodepthtextReadmeCédric Pierquet
table, table longnox – Adaptable tablesnoxReadmeMatthias Borck-Elsner, Rainer Schöpf
numbersnumname – Convert a number to its English expressionnumnameReadmeS Joshua Swamidass
tabularhttabularht – Tabular environments with height specifiedtabularht/Heiko Oberdiek
pdf featuresocg-p – PDF OCG support in LaTeXocg-pReadmeMoshammer Werner
pdf featuresocgtools – Manipulate OCG layers in PDF presentationsocgtoolsReadmeRobert Mařík
pdf featuresocgx – Use OCGs within a PDF document without JavaScriptocgxReadmePaul Gaborit
book publication, classoctavo – Typeset books following classical design and layoutoctavoReadmeStefan A Revets
gamesOneDown – Typeset Bridge DiagramsonedownReadmeJacob Wiersma
adobe distiller, pdf featuresopacity-pro – Set transparency and blend modeopacity-proReadmeDonald P. Story (deceased)
bibtex support, footnoteopcit – Footnote-style bibliographical referencesopcitReadmeFederico Garcia-De Castro
colouropencolor – Definitions from the Open Color libraryopencolorReadmeMichele Piazzai
graphics symbols, pgf tikzoPlotSymbl – Some symbols which are not easily availableoplotsymblReadmeB. Michel Döhring
conditional compilation, editorialoptional – Facilitate optional printing of parts of a documentoptional/Donald Arseneau
key-valoptions – Provides convenient key-value options for LaTeX package writersoptionsReadmeDaan Leijen
footnote, journalOSDA – Commands for Proceedings of the Workshop on Open-Source Design AutomationosdaReadmeChristian Krieg
pgf tikz, umlpgf-umlcd – Some LaTeX macros for UML Class Diagramspgf-umlcdReadmeThe PGF/TikZ Team, Xu Yuan
gamesothelloboard – Typeset Othello (Reversi) diagrams of any size, with annotationsothelloboardReadmeSteven Hall
maths, pgf tikzoverarrows – Custom extensible arrows over math expressionsoverarrowsReadmeJulien Labbé
presentationoverlays – Incremental slidesoverlaysReadmeAndreas Nolda
graphics textoverpic – Combine LaTeX commands over included graphicsoverpicReadmeRolf Niepraschk
colourpagecolor – Interrogate page colorpagecolorReadmeHans-Martin Münch
page nospagecont – Page numbering that continues between documentspagecontReadmeMiguel Vinícius Santini Frasson
class, layout, pgf tikzpagelayout – Layout graphic rich documentspagelayoutReadmeFriedemann Bartels
label and references, macro supportpagerange – Flexible and configurable page range typesettingpagerangeReadmeAhmed Musa
page controlpagesel – Select pages of a document for outputpageselReadmeHeiko Oberdiek
colourpalette – Create palettes for colors and symbols that can be swapped inpaletteReadmeDennis Chen
calculationpapermas – Compute the mass of a printed version of a documentpapermasReadmeHans-Martin Münch
parshapeparades – Tabulators and space between paragraphs in galley approachparadesReadmeOleg Parashchenko
bullet list, list, list enumumerateparalist – Enumerate and itemize within paragraphsparalistReadmeBernd Schandl
notesparnotes – Notes after every paragraph (or elsewhere)parnotesReadmeChelsea Hughes (inactive)
layout, parshapeparskip – Layout with zero \parindent, non-zero \parskipparskipReadmeFrank Mittelbach, Hubert Partl (inactive), Robin Fairbairns (deceased)
games, pgf tikzpas-crosswords – Creating crossword grids, using TikZpas-crosswordsReadmeStéphane Pasquet
calculation, maths, pgf tikzpascaltriangle – Draw beautiful Pascal (Yanghui) trianglespascaltriangleReadmeNan Geng
typeset tool, typesettingpassopt – Passing options to packages or classespassoptReadmeQu Yi
multicolumnpbalance – Balance last page in two-column modepbalanceReadmeNelson Lago
boxingpbox – A variable-width \parbox commandpboxReadmeSimon Law
pdf features, pdf process, pdf viewpdfprivacy – A LaTeX package to remove or suppress pdf meta-datapdfprivacyReadmeLaurens Sion
typesettingpdfrender – Control rendering parameterspdfrenderReadmeHeiko Oberdiek
editorial, graphics include, marginal, teachingpdfreview – Annotate PDF files with marginpdfreviewReadmeMichael Palmer
hyper, presentationpdfscreen – Support screen-based document designpdfscreen/C. V. Radhakrishnan
compact printpfarrei – LaTeX support of pastors’ and priests’ workpfarreiReadmeMarkus Kohm (inactive)
key-valpgfkeysearch – This package offers a way to find keys in a given path ‘recursively’, unlike pgfkeysvalueofpgfkeysearchReadmeAlceu Frigeri
conditional compilation, editorialphfcc – Convenient inline commenting in collaborative documentsphfccReadmePhilippe Faist
verbatimphfquotetext – Quote verbatim text without white space formattingphfquotetextReadmePhilippe Faist
document management, version control, watermarkphfsvnwatermark – Watermarks with version control information from SVNphfsvnwatermarkReadmePhilippe Faist
label and referencesphilex – Cross references for named and numbered environmentsphilexReadmePeter Pagin
classphotobook – A document class for typesetting photo booksphotobookReadmeAlex A. Naanou
graphics textpinlabel – A TeX labelling packagepinlabel/Colin Rourke
graphics in texpmboxdraw – Poor man’s box drawing characterspmboxdrawReadmeHeiko Oberdiek
versepoetry – Facilities for typesetting poetry and poetical structurepoetryReadmeDonald P. Goodman
versepoetrytex – Typeset anthologies of poetrypoetrytexReadmeSam Whited
mathspolynom – Macros for manipulating polynomialspolynomReadmeCarsten Heinz, Hendri Adriaens (inactive)
tablepolytable – Tabular-like environments with named columnspolytableReadmeAndres Löh
chemistryproflabo – Draw laboratory equipmentproflaboReadmeThomas Mounier
document managementprogress – Creates an overview of a document’s stateprogressReadmeKasper B. Graversen
graphics useprogressbar – Visualize shares of total amounts in the form of a (progress-)barprogressbarReadmeMarcel Jira
decoration, editorialproofread – Commands for inserting annotationsproofreadReadmeWybo H. Dekker
graphics eps/pdfpst-pdf – Make PDF versions of graphics by processing between runspst-pdfReadmeHubert Gäßlein, Rolf Niepraschk
phoneticpst-vowel – Enable arrows showing diphthongs on vowel chartspst-vowelReadmeAlan Munn
scientific docsstring – Typeset sequences with justification pointerspstringReadmeWilliam Blum
listing, syntax highlightpygmentex – Use Pygments to format code listings in documentspygmentexReadmeJosé Romildo Malaquias
boxing, callback, listingpynotebook – pynotebook presents (raw, Markdown or Python) codes (and execution with LuaLaTeX) as in a Jupyter NotebookpynotebookReadmeCédric Pierquet
callbackpythontex – Run Python from within a document, typesetting the resultspythontexReadmeGeoffrey Poore
article-like, class, multi-lingualQ-and-Aq-and-aReadmeJinwen XU
barcode, qr code, ruleqrcode – Generate QR codes in LaTeXqrcodeReadmeAnders O. F. Hendrickson
adobe distiller, letter, pdf features, qr codeqrcstamps – Create QR codes using stampsqrcstampsReadmeDonald P. Story (deceased)
linguistic, treeqtree – Draw tree structuresqtreeReadmeAlexis Dimitriadis, Jeffrey Siskind (inactive)
examquiz2socrative – Prepare questions for socrative quizzesquiz2socrativeReadmePaolo Lella
quotationquoting – Consolidated environment for displayed textquotingReadmeThomas Titz
quotationquotmark – Consistent quote marksquotmarkReadmeNicola Talbot
layout, parshaperagged2e – Alternative versions of “ragged”-type commandsragged2eReadmeMarei Peischl, Martin Schröder (inactive)
graphics userandbild – Marginal picturesrandbildReadmePaul Ebermann
examrandexam – Make an exam paper and its randomized variantsrandexamReadmeJianrui Lyu
calculation, randomrandintlist – Creating random integer number lists , with repeating and sorting optionsrandintlistReadmeCédric Pierquet
calculation, graphics in tex, randomrandomwalk – Random walks using TikZrandomwalkReadmeBruno Le Floch
securityrandtext – Randomise the order of characters in stringsrandtextReadmeCharles Duan
maths, tablerccol – Decimal-centered optionally rounded numbers in tabularrccolReadmeEckhart Guthöhrlein
document management, version controlrcs-multi – Typeset RCS version control in multiple-file documentsrcs-multiReadmeMartin Scharrer
document management, version controlrcs – Use RCS (revision control system) tags in LaTeX documentsrcsReadmeJoachim Schrod, Julian Gilbey
data manipulationreadarray – Read, store and recall array-formatted datareadarrayReadmeSteven B. Segletes
amusements, graphics, graphics includerealhats – Put real hats on symbols instead of ^realhatsReadmeAdam Townsend, Matthew Scroggs
amusements, mathsrealtranspose – The “real” way to transpose a MatrixrealtransposeReadmeLars Quentin
mathsrec-thy – Commands to typeset recursion theory papersrec-thyReadmePeter M. Gerdes
cookingrecipe – A LaTeX class to typeset recipesrecipeReadmeMaurizio Loreti (inactive)
cookingrecipecard – Typeset recipes in note-card-sized boxesrecipecardReadmeBen Reish
diagrams, music, pgf tikzrecorder-fingering – Package to display recorder fingering diagramsrecorder-fingeringReadmeAlan Munn
debug supp, label and referencesrefcheck – Check references (in figures, table, equations, etc)refcheckReadmeOleg V. Motygin
label and referencesrefenums – Define named items and provide back-references with that namerefenumsReadmeOliver Kopp
graphics manipulationreflectgraphics – Techniques for reflecting graphicsreflectgraphicsReadmeOliver Reiche
classrefman – Format technical reference manualsrefman/Axel Kielhorn, Hubert Partl (inactive)
label and referencesrefstyle – Advanced formatting of cross referencesrefstyleReadmeDaniel Els
macro supportregexpatch – High level patching of commandsregexpatchReadmeEnrico Gregorio
comp net, computer science, engineeringregister – Typeset programmable elements in digital hardware (registers)registerReadmeMatthew Lovell
font sel, macro supportrelsize – Set the font size relative to the current font sizerelsizeReadmeDonald Arseneau, Matt Swift (inactive)
conditional compilationrenditions – Multiple versions from the same contentrenditionsReadmeDonald P. Story (deceased)
pdf featuresrepltext – Control how text gets copied from a PDF filerepltextReadmeScott Pakin
compilationrerunfilecheck – Checksum based rerun checks on auxiliary filesrerunfilecheckReadmeHeiko Oberdiek
macro supportrescansync – Re-scan tokens with synctex informationrescansyncReadmeuser202729
typesettingresponsive – Responsive design methods for LaTeXresponsiveReadmeMichal Hoftich
typeset gridreturntogrid – Semi-automatic grid typesettingreturntogridReadmeUlrike Fischer
proofribbonproofs – Drawing ribbon proofsribbonproofsReadmeJohn Wickerson
engineering, mathsrigidnotation – Typeset vectors and matrices following the RIGID notationrigidnotationReadmePhilippe Nadeau
compilationrobust-externalize – Cache anything (TikZ, python, …) in a robust, efficient and pure wayrobust-externalizeReadmeLéo Colisson
indexrobustindex – Create index with pagerefsrobustindexReadmeWilberd van der Kallen
numbers, page nosromanbarpagenumber – Typesetting roman page numbersromanbarpagenumberReadmeRobin Schneider
layoutrotpages – Typeset sets of pages upside-down and backwardsrotpagesReadmeSergio Callegari
class, gamesrpg-module – Typesetting old-school Dungeons and Dragons modulesrpg-moduleReadmeMichael C. Davis
linguistic, treeRRGtrees – Linguistic tree diagrams for Role and Reference Grammar (RRG) with LaTeXrrgtreesReadmeDavid Gardner
diagrams, ganttrtsched – Draw Real-Time scheduling (GANTT) chartsrtschedReadmeGiuseppe Lipari
puzzlerubik – Document Rubik cube configurations and rotation sequencesrubikReadmeApostolos Syropoulos, Dick Nickalls
misc supportrulerbox – Draw rulers around a boxrulerboxReadmeYuchang Yang
callback, exec foreignruncode – Execute foreign source code and embed the result in the pdf fileruncodeReadmeHaiYing Wang, Haim Bar
graphics includerviewport – Relative Viewport for Graphics InclusionrviewportReadmeBoris Veytsman
callback, graphics inline, litprogSagε-TeX – Embed Sage code and plots into LaTeXsagetexReadmeDan Drake (inactive), Dima Pasechnik
parallelparcolumns – Multiple column parallel typesettingparcolumnsReadmeJonathan Sauer
footnotesavefnmark – Save name of the footnote mark for reusesavefnmark/Volker Kuhlmann
layoutsavetrees – Optimise the use of each page of a LaTeX documentsavetreesReadmeScott Pakin
misc supportscalebar – Create scalebars for maps, diagrams or photosscalebarReadmeMichael Lake
graphics manipulationscalerel – Constrained scaling and stretching of objectsscalerelReadmeSteven B. Segletes
bullet list, font supp miscscaletextbullet – Resize the \textbullet without changing its vertical centerscaletextbulletReadmeOliver Beery
misc supportscanpages – Support importing and embellishing scanned documentsscanpagesReadmeMichael Sharpe
planning, timetableschedule – Weekly schedulesscheduleReadmeEthan Deneault, Jason Alexander (inactive)
file managementscontents – Stores LaTeX contents in memory or filesscontentsReadmePablo González Luengo
games, pgf tikzscratch3 – Draw programs like “scratch”scratch3ReadmeChristian Tellechea
games, pgf tikzScratchX – Include Scratch programs in LaTeX documentsscratchxReadmeThibault Ralet
drama scriptscreenplay-pkg – Package version of the screenplay document classscreenplay-pkgReadmeAlan Munn
class, drama scriptscreenplay – A class file to typeset screenplaysscreenplayReadmeJohn Pate
linguisticsdrt – Macros for Segmented Discourse Representation TheorysdrtReadmePaul Isambert (inactive), Yuri Robbers
decorationsectionbox – Create fancy boxed ((sub)sub)sectionssectionboxReadmeMichael Wilkinson
decoration, headingssectionbreak – LaTeX support for section breakssectionbreakReadmeMichal Hoftich
page controlselectp – Select pages to be outputselectp/Donald Arseneau
inputencselinput – Semi-automatic detection of input encodingselinputReadmeHeiko Oberdiek
computer sciencesemantic – Help for writing programming language semanticssemantic/Arne John Glenstrup, Peter Møller Neergaard
presentationseminar – Make overhead slidesseminarReadmeDenis Girou (inactive), Herbert Voß, Sebastian Rahtz (deceased), Timothy Van Zandt (inactive)
layoutsemioneside – Put only special contents on left-hand pages in two sided layoutsemionesideReadmeStephan Hennig
footnotesepfootnotes – Support footnotes and endnotes from separate filessepfootnotesReadmeEduardo C. Lourenço de Lima
teachingsesstime – Session and timing information in lecture notessesstimeReadmeNiklas Beisert
line spacesetspace – Set space between linessetspaceReadmeDavid Carlisle, Erica Harris (inactive), Geoffrey Tobin (inactive), Robin Fairbairns (deceased)
gamessgame – LaTeX style for typesetting strategic gamessgameReadmeMartin J. Osborne
decoration, maths theoremShaded theorems – Theorem environments that are shadedshadethmReadmeJim Hefferon
decorationshadowtext – Produce text with a shadow behind itshadowtextReadmeYori Zwols
micro layout, parshape, text flowshapepar – A macro to typeset paragraphs in specific shapesshapeparReadmeDonald Arseneau
float, listing, syntax highlightshdoc – Float environment to document the shell commands of a terminal sessionshdocReadmeSimon Michael Laube
tablesltables – Simplified tables for LaTeXsltablesReadmeAlexey Shipunov
bullet list, list, list enumumerateshortlst – Compact lists by running several items per lineshortlst/Mogens Lemvig Hansen
toc etcshorttoc – Table of contents with different depthsshorttoc/Jean-Pierre Drucbert (deceased)
listing, macro demonstrationshowexpl – Typesetting LaTeX source codeshowexplReadmeRolf Niepraschk
bibtex support, label and references, macro supportshowlabels – Show label commands in the marginshowlabelsReadmeNorman Gray
caption, rotationsidecap – Typeset captions sidewayssidecapReadmeHubert Gäßlein (inactive), Rolf Niepraschk
marginalsidenotes – Typeset notes containing rich content, in the marginsidenotesReadmeAndy Thomas
marginalsidenotesplus – Place referenced notes, alerts, figures and tables into the document marginsidenotesplusReadmeAnton Vrba
drama scriptsides – A LaTeX class for typesetting stage playssidesReadmeWing L Mui
compilationsilence – Selective filtering of error messages and warningssilenceReadmeMichael Pock, Paul Isambert (inactive)
amusements, numbers, page nossillypage – John Cleese’s Silly Walk as page numbering stylesillypageReadmePaulo Roberto Massa Cereda
coverssimplecd – Simple CD, DVD covers for printingsimplecdReadmeDániel Majoros
class, cv, lyxsimplecv – A simple class for writing curricula vitaesimplecvReadmeJean-Marc Lasgouttes
invoicesimpleinvoice – Easy typesetting of invoicessimpleinvoiceReadmeMathias Lohne
physicssimpler-wick – Simpler Wick contractionssimpler-wickReadmeJoshua Ellis
maths, matrixsimples-matrices – Define matrices by given list of valuessimples-matricesReadmeYvon Henel
physicssimplewick – Simple Wick contractionssimplewickReadmeJindrich Kolorenc
dummy generator, editorial, notes, ruleskeldoc – Placeholders for unfinished documentsskeldocReadmeMagnus Lie Hetland
graphics, logoskillicons – Integrate skill icons into your documentsskilliconsReadmeAnton Mnatsakanov
font supportslantsc – Access different-shaped small-caps fontsslantscReadmeHarald Harders (inactive)
tableslashbox – Both column and row headings in a tabular cellslashbox/Koichi Yasuoka, Toru Sato
mathssmart-eqn – Automatic math symbol styling for LaTeX documentssmart-eqnReadmeZiyue Xiang
misc conv, unitssmartunits – Converting between common metric and Imperial unitssmartunitsReadmeAndrew Mathas
archival, file managementsnapshot – List the external dependencies of a LaTeX documentsnapshotReadmeMichael J. Downes (deceased), The American Mathematical Society
editorial, notessnaptodo – A todo that snaps to the closer sidesnaptodoReadmeHsin-Po Wang
marginalsnotez – Typeset notes, in the marginsnotezReadmeClemens Niederberger
chords, musicsongbook – Package for typesetting song lyrics and chord bookssongbookReadmeChristopher Rath
music, presentation, versesongproj – Generate Beamer slideshows with song lyricssongprojReadmeTanguy Ortolo
chords, musicsongs – Produce song books for church or fellowshipsongsReadmeKevin W. Hamlen
letterspace, underlinesoulpos – A fancy means of underliningsoulposReadmeHeiko Oberdiek
abbreviations, footnote, layout, list, typesettingspacingtricks – Addressing various spacing issuesspacingtricksReadmeAntoine Missier
maths, maths system equations, maths theorem, matrix, typeset gridspalign – Typeset matrices and arrays with spaces and semicolons as delimitersspalignReadmeJoseph Rabinoff
multimediaSpeLaTeX – Create PDF documents with hyperlinks to audiofragmentsspelatexReadmeWalter Daems
tablespreadtab – Spreadsheet features for LaTeX tabular environmentsspreadtabReadmeChristian Tellechea
verbatimspverbatim – Allow line breaks within \verb and verbatim outputspverbatimReadmeScott Pakin
mathssseq – Typesetting spectral sequence chartssseq/Tilman Bauer
class, drama scriptstage – A LaTeX class for stage playsstageReadmeReuben Thomas, Robert Jahrling (inactive)
class, subdocsstandalone – Compile TeX pictures stand-alone or as part of a documentstandaloneReadmeMartin Scharrer
maths, statisticsstatistics – Compute and typeset statistics tables and graphicsstatisticsReadmeJulien Rivaud
advertisementsstubs – Create tear-off stubs at the bottom of a pagestubsReadmeNorbert Stuhrmann
diagramssuanpan-l3 – Traditional Chinese 7-bids suanpan (abacus) package based on l3drawsuanpan-l3ReadmeNan Geng
maths system equationssubeqnarray – Equation array with sub numberingsubeqnarrayReadmeJohannes L. Braams
class, subdocssubfiles – Individual typesetting of subfiles of a “main” documentsubfilesReadmeFederico Garcia-De Castro, Gernot Salzer
subfloatsubfloat – Sub-numbering for figures and tablessubfloatReadmeHarald Harders (inactive)
maths, physics, subsup positionsubsupscripts – A range of sub- and superscript commandssubsupscriptsReadmeRiccardo Bresciani
gamessudoku – Create sudoku gridssudokuReadmePaul Abraham
book publication, class, dissertationsuftesi – A document class for typesetting theses, books and articlessuftesiReadmeIvan Valbusa
table, table longsupertabular – A multi-page tables packagesupertabularReadmeJohannes L. Braams
graphics includeswfigure – Insert large images that do not fit into a single pageswfigureReadmeClaudio Beccari
data displaySwimgraf – Graphical/textual representations of swimming performancesswimgrafReadmeMartin J. Osborne
logicsyllogism – Typeset syllogisms in LaTeXsyllogismReadmeNicolas Vaughan
linguistic, logicsynproof – Easy drawing of syntactic proofssynproofReadmePaul Isambert (inactive), Yuri Robbers
font support, font usesynthslant – Synthetically slant textsynthslantReadmeChris Spiel
linguistic, treesynttree – Typeset syntactic treessynttreeReadmeMatijs van Zuijlen
graphics in tex, mathst-angles – Draw tangles, trees, Hopf algebra operations and other picturest-anglesReadmeVolodymyr Lyubashenko, Yurii Bespalov
footnote, tabletablefootnote – Permit footnotes in tablestablefootnoteReadmeHans-Martin Münch
toc etctableof – Tagging tables of contentstableofReadmeJean-François Burnol
list enumumeratetablists – Tabulated lists of short itemstablistsReadmeOlga Lapko
french, maths, maths tabvartablvar – Typesetting pretty tables of signs and variations according to French usagetablvarReadmeAntoine Missier
layouttabto-ltx – “Tab” to a measured position in the linetabto-ltxReadmeDonald Arseneau
table, table longtabu – Flexible LaTeX tabularstabuReadmeFlorent Chervet (inactive)
tabletabularborder – Remove excess space at left and right of tabulartabularborder/Johannes K. Fink
tabletabularcalc – Calculate formulas in a tabular environmenttabularcalcReadmeChristian Tellechea
tabletabularew – A variation on the tabular environmenttabularewReadmeDiego Saba
table, table longtabularray – Typeset tabulars and arrays with LaTeX3tabularrayReadmeJianrui Lyu
tabletabulary – Tabular with variable width columns balancedtabularyReadmeDavid Carlisle
conditional compilationtagging – Document configuration with tagstaggingReadmeBrent Longborough (deceased), The LaTeX Project Team
text layouttagpair – Word-by-word glosses, translations, and bibliographic attributionstagpairReadmeAndreas Nolda
presentationtalk – A LaTeX class for presentationstalkReadmeMartin Wiebusch
list, list enumumeratetasks – Horizontally columned liststasksReadmeClemens Niederberger
table, table longtblr-extras – Extra libraries for tabularray for caption and babel compatibilitytblr-extrasReadmeManuel Merino
date timetdclock – A ticking digital clock package for PDF outputtdclockReadmeLuis Randez
humanitiesTechnica – Typesetting for the humanitiestechnicaReadmeGianfranco Boggio-Togna
document templatetechnics – A package to format technical documentstechnics/Joachim Nilsson
debug suppted – A (primitive) token list editortedReadmeManuel Pégourié-Gonnard
logic, symbol support, text symboltemporal-logic – Symbols for Temporal Logicstemporal-logicReadmeDominik Schmid
maths, subsup positiontensor – Typeset tensorstensorReadmeMike Piff (inactive), Philip G. Ratcliffe
calendartermcal – Print a class calendartermcalReadmeBill Mitchell
boxing, computer science, listingtermsim – Simulate Win10, Ubuntu, and Mac terminalstermsimReadmeNan Geng
dummy generator, indextestidx – Dummy text for testing index styles and indexing applicationstestidxReadmeNicola Talbot
securitytex-label – Place a classification on each page of a documenttex-labelReadmeBalagopal Komarath
data importtexgit – Download, access, and potentially execute files from gittexgitReadmeThomas Weise
gamesTeXmate – Comprehensive chess annotation in LaTeXtexmateReadmeFederico Garcia-De Castro
chemistry, mol biotexshade – Package for setting nucleotide and peptide alignmentstexshadeReadmeEric Beitz
chemistry, mol biotextopo – Annotated membrane protein topology plotstextopo/Eric Beitz
layouttextpos – Place boxes at arbitrary positions on the LaTeX pagetextposReadmeNorman Gray
drama scriptthalie – Typeset drama playsthalieReadmeLouis Paternault
drama scripttheatre – A sophisticated package for typesetting stage playstheatreReadmeChristian Hinque
chemistry, physicsthermodynamics – Macros for multicomponent thermodynamics documentsthermodynamicsReadmeKarl D. Hammond
decoration, maths theoremthmbox – Decorate theorem statementsthmboxReadmeEmmanuel Beffara
maths, maths theoremthmtools – Extensions to theorem environmentsthmtoolsReadmeUlrich M. Schwarz (inactive), Yukai Chou
notes, tablethreeparttablex – Notes in longtablesthreeparttablexReadmeLars Madsen
layout pagethumb – Thumb marks in documentsthumbReadmeChristian Holm Christensen
layout pagethumbs – Create thumb indexesthumbsReadmeHans-Martin Münch
layout pagethumby – Create thumb indexes for printed booksthumbyReadmeSergey Goldgaber
class, examtiet-question-paper – A LaTeX question paper class for the TIETtiet-question-paperReadmeRaghav B. Venkataramaiyer
graphics subpictile-graphic – Create tiles of a graphical filetile-graphicReadmeDonald P. Story (deceased)
graphics, graphics in textiscreen – Mimic the screen of older Texas Instruments calculatorstiscreenReadmeMustafa Ibrahim
typesettingtitlecaps – Setting rich-text input into Titling CapstitlecapsReadmeSteven B. Segletes
graphics use, titlepagetitlepic – Add picture to title page of a documenttitlepicReadmeThomas ten Cate
decoration, graphics plotpgfornament – Drawing of Vectorian ornaments with PGF/TikZpgfornamentReadmeAlain Matthes
maths, pgf tikztkz-berge – Macros for drawing graphs of graph theorytkz-bergeReadmeAlain Matthes
calculation, luatex, mathstkz-elements – A Lua library for drawing Euclidean geometry with TikZ or tkz-euclidetkz-elementsReadmeAlain Matthes
graphics use, maths, pgf tikz, use luatextkz-euclide – Tools for drawing Euclidean geometrytkz-euclideReadmeAlain Matthes
graphics, graphics plot, pgf tikztkz-fct – Tools for drawing graphs of functionstkz-fctReadmeAlain Matthes
graphics, maths, pgf tikztkz-graph – Draw graph-theory graphstkz-graphReadmeAlain Matthes
graphics, maths, maths tabvar, pgf tikztkz-tab – Tables of signs and variations using PGF/TikZtkz-tabReadmeAlain Matthes
conditional compilation, decoration, editorialto-be-determined – Highlight text passages that need further workto-be-determinedReadmeYegor Bugayenko
toc etctocdata – Adds names to chapters, sections, figures in the TOC and LOFtocdataReadmeBrian Dunn
editorial, notestodo – Make a to-do list for a documenttodoReadmeFederico Garcia-De Castro
editorial, notes, pgf tikztodonotes – Marking things to do in a LaTeX documenttodonotesReadmeHenrik Skov Midtiby
table, table longtopiclongtable – Extend longtable with cells that merge hierarchicallytopiclongtableReadmePaolo Brasolin
diagrams, graphics usetqft – Drawing TQFT diagrams with TikZ/PGFtqftReadmeAndrew Stacey
boxing, decoration, editorialtram – Typeset tram boxes in LaTeXtramReadmeVafa Khalighi, bidi-tex GitHub Organisation
headings, legaltramlines – A package for creating tramlines (lines above and below a title used by lawyers in the UK)tramlinesReadmeElijah Z Granet
multi-lingual, package supporttranslations – Internationalisation of LaTeX2ε packagestranslationsReadmeClemens Niederberger
maths symboltrfsigns – Typeset transform signstrfsignsReadmeKai Rascher
macro supporttrimspaces – Trim spaces around an argument or within a macrotrimspacesReadmeWill Robertson
cvtucv – Support for typesetting a CV or résumeétucvReadmeGeorge Louthan
class, conform, dissertation, document, letter, poster, presentation, std, templatetuda-ci – LaTeX templates of Technische Universität Darmstadttuda-ciReadmeMarei Peischl
book publication, classtufte-latex – Document classes inspired by the work of Edward Tuftetufte-latexReadmeKevin Godby
exam, layoutturnthepage – Provide “turn page” instructionsturnthepageReadmeHans-Martin Münch, Luca Merciadri
graphics, text symboltwemojis – Use Twitter’s open source emojis through LaTeX commandstwemojisReadmeJost Rossel
listtyped-checklist – Typesetting tasks, goals, milestones, artifacts, and more in LaTeXtyped-checklistReadmeRichard Grewe
label and referencestypedref – Eliminate errors by enforcing the types of labelstypedref/Gregory Seidman, James Ashton (inactive)
font seltypeface – Select a balanced set of fontstypefaceReadmeGeoffrey Jones
letterspace, micro layouttypog – Typographic fine-tuning and micro-typographic enhancementstypogReadmeChris Spiel
layout showtypogrid – Print a typographic gridtypogridReadmeHarald Harders (inactive)
classuassign – Environments and options for typesetting university assignmentsuassignReadmeNathan Esau
colourudepcolor – University of Piura (UDEP) institutional and corporate colors for digital and electronic mediaudepcolorReadmeManuel Merino
emphasis, underlineulem – Package for underliningulemReadmeDonald Arseneau
music, pgf tikzundar-digitacion – Musical fingering diagrams of Pinkullo Huanuqueño, Flute (Recorder), Quena and Saxophoneundar-digitacionReadmeAland Bravo Vecorena
titlepageuni-titlepage – Universal titlepages with configuration options and predefined stylesuni-titlepageReadmeMarkus Kohm
notes, toc etcunifront – Give notes a unique front page for every chapter and sectionunifrontReadmeWeifan Wei
bibliousebib – A simple bibliography processorusebibReadmeEnrico Gregorio
documentation supportuseclass – Load classes as packagesuseclassReadmeYuxi HUANG
tablevcell – Vertical alignment of content inside table cellsvcellReadmeXavier Dionne
logovectorlogos – Vectorial logos (GeoGebra, Emacs, Scratch, …) with ‘inline’ supportvectorlogosReadmeCédric Pierquet
math diagrams, pgf tikzvenndiagram – Creating Venn diagrams with TikZvenndiagramReadmeNicola Talbot
boxing, verbatimverbatimbox – Deposit verbatim text in a boxverbatimboxReadmeSteven B. Segletes
verbatimverbatimcopy – Make copies of text documents from within LaTeXverbatimcopyReadmeLars Madsen, Ulrich Diez
class, exam, exerciseverifica – Typeset (Italian high school) exercisesverificaReadmeRiccardo Dossena
exam, exerciseverifiche – A LaTeX package to typeset (Italian) high school testsverificheReadmeFrancesco Raccanello
package developmentverifycommand – Verifies definitions are unchanged, such as before patchingverifycommandReadmeBrian Dunn
verseverse – Aids for typesetting simple verseverseReadmePeter R. Wilson (inactive), Will Robertson
conditional compilationversion – Conditionally include textversion/Donald Arseneau, Stephen Bellantoni
notesversonotes – Display brief notes on verso pagesversonotesReadmeNorman Gray
editorialvertbars – Mark vertical rules in margin of textvertbarsReadmePeter R. Wilson (inactive), Will Robertson
version controlvhistory – Support for creating a change logvhistoryReadmeJochen Wertenauer
tablevtable – Vertical alignement of table cellsvtableReadmeRobert Paciorek
multicolumnvwcol – Variable-width multiple text columnsvwcolReadmeWill Robertson
layout pagewallpaper – Easy addition of wallpapers (background images) to LaTeX documents, including tilingwallpaperReadmeMichael Wilkinson
games, pgf tikz, symbol supportwargame – A LaTeX package to prepare hex’n’counter wargameswargameReadmeChristian Holm Christensen
font supportwasysym – LaTeX support for the wasy fontswasysymReadmeAxel Kielhorn
convert html, examWebQuiz – Write interactive web based quizzeswebquizReadmeAndrew Mathas
gamesweiqi – Use LaTeX3 to typeset Weiqi (Go)weiqiReadmeMs_yam
text flowwrapstuff – Wrapping text around stuffwrapstuffReadmeQing Lee
pgf tikz, typeset gridWriteOnGrid – Write on grid lineswriteongridReadmeCédric Pierquet
adobe distiller, pdf processxbmks – Create a cross-document bookmark treexbmksReadmeDonald P. Story (deceased)
pdf features, unicodexcjk2uni – Convert CJK characters to Unicode, in pdfTeXxcjk2uniReadmeQing Lee
colourxcolor-material – Defines the 256 colors from Google Material Color Palettexcolor-materialReadmeJerick Órdenes
<img src=“https://scillidan.github.io/image_latex/xcolor.webp” [width=“30”>colourxcolor – Driver-independent color extensions for LaTeX and pdfLaTeX](https://www.ctan.org/pkg/xcolor)xcolorReadmeThe LaTeX Project Team, Uwe Kern (inactive)
conditional compilationxcomment – Allows selected environments to be included/excludedxcommentReadmeHerbert Voß, Timothy Van Zandt (inactive)
font supp misc, font util, pdf featuresxfakebold – Fake a regular font for bold charactersxfakeboldReadmeHerbert Voß
rulexhfill – Extending \hrulefillxhfill/Herbert Voß
amusements, colourxkcdcolors – xkcd names of colorsxkcdcolorsReadmeRomano Giannetti
table, table longxltabular – Longtable support with possible X-column specifierxltabularReadmeHerbert Voß, Rolf Niepraschk
musicxpiano – An extension of the piano packagexpianoReadmeEnrico Gregorio
curve graphics, graphics in texxpicture – Extensions of LaTeX picture drawingxpictureReadmeRobert Fuster
chinesexpinyin – Automatically add pinyin to Chinese charactersxpinyinReadmeQing Lee
review documentxreview – Reviewing LaTeX documents made easy(er)xreviewReadmeLorenzo Peri
adobe distiller, boxing, pdf featuresxsavebox – Saveboxes for repeating content without code replication, based on PDF Form XObjectsxsaveboxReadmeAlexander Grahn
exam, exercisexsim – eXercise Sheets IMprovedxsimReadmeClemens Niederberger
e-tex, gamesxskak – An extension to the skak package for chess typesettingxskakReadmeUlrike Fischer
verbatimxurl – Allow URL breaks at any alphanumerical characterxurlReadmeHerbert Voß
backgroundxwatermark – Graphics and text watermarks on selected pagesxwatermarkReadmeAhmed Musa (inactive)
chemistry, diagramsxymtex – Typesetting chemical structuresxymtexReadmeShinsaku Fujita
mathsytableau – Many-featured Young tableaux and Young diagramsytableauReadmeRyan Reich
chinese, dummy generator, macro supportzhlipsum – Chinese dummy textzhlipsumReadmeXiangdong Zeng
chinese, numberszhnumber – Typeset Chinese representations of numberszhnumberReadmeQing Lee
geometry, productionzwpagelayout – Page layout and crop-markszwpagelayoutReadmeZdeněk Wagner
alignment support, matrix, tablearray – Extending the array and tabular environmentsarrayReadmeFrank Mittelbach, The LaTeX Project Team
table rulehhline – Better horizontal lines in tabulars and arrayshhlineReadmeDavid Carlisle
layout showlayout – View the layout of a documentlayoutReadmeHideo Umeki, Johannes L. Braams, Kent McPherson, The LaTeX Project Team
table, table longlongtable – Allow tables to flow over page boundarieslongtableReadmeDavid Carlisle, David Kastrup, The LaTeX Project Team
tabletabularx – Tabulars with adjustable-width columnstabularxReadmeDavid Carlisle, The LaTeX Project Team
cite support, label and references, typesettingxr – References to other LaTeX documentsxrReadmeDavid Carlisle, Jean-Pierre Drucbert (deceased), The LaTeX Project Team
barcodebarracuda – Draw barcodes with LuabarracudaReadmeRoberto Giacomelli
games, pgf tikzbattleship – A LaTeX style file for typesetting Battleship logic puzzlesbattleshipReadmeJosef Kleber
games, luatex, typesettingchickenize – Use lua callbacks for “interesting” textual effectschickenizeReadmeArno L Trautmann
exam, luatexcloze – A LuaLaTeX package for creating cloze textsclozeReadmeJosef Friedrich
chinese, font support, japanese, luatexEvangelion-JFM – A Japanese font metric supporting many advanced featuresevangelion-jfmReadmeJing Huang
foreign import, luatex, macro supportinterpreter – Translate input files on the flyinterpreterReadmePaul Isambert (inactive), Yuri Robbers
debug supp, generic macros, luatexlua-visual-debug – Visual debugging with LuaLaTeXlua-visual-debugReadmePatrick Gundlach
layout, luatexlua-widow-control – Automatically remove widows and orphans from any documentlua-widow-controlReadmeMax Chernoff
format, luatexminim – A modern plain format for the LuaTeX engineminimReadmeEsger Renkema
lua suppnodetree – Visualize node lists in a tree viewnodetreeReadmeJosef Friedrich
pdf featurespdfextra – Extra PDF features for (Op)TeXpdfextraReadmeMichal Vlasák
luatex, spellspelling – Support for spell-checking of LuaTeX documentsspellingReadmeStephan Hennig
date time, luatexdatestamp – Fixed date-stamps with LuaLaTeXdatestampReadmeनिरंजन
colour, graphics, graphics eps/pdf, graphics include, graphics plot, graphics plot function, luatex, mathsdomaincoloring – Draw colored represenations of complex functionsdomaincoloringReadmeHerbert Voß
bidirectional, critical edition, luatex, multi-lingual, parallelekdosis – Typesetting TEI-xml compliant Critical EditionsekdosisReadmeRobert Alessi
graphics, graphics use, luatexemoji – Emoji support in (Lua)LaTeXemojiReadmeXiangdong Zeng
cite support, graphics use, luatexemojicite – Add emojis to citationsemojiciteReadmeLeon Sixt
document management, luatex, version controlgitinfo-lua – Display git project information in your LaTeX projectsgitinfo-luaReadmeErik Nijenhuis
font, font supp symbol, font support, font symbol, font ttf, games, luatexhmtrump – Describe card gameshmtrumpReadmeShoma Hitomi
luatex, micro layoutlinebreaker – Prevent overflow boxes with LuaLaTeXlinebreakerReadmeMichal Hoftich
book publication, cooking, luatexmakecookbook – Make a CookbookmakecookbookReadmeRosalie D Amico, Terrence Murphy
book publication, class, luatex, productionnovel – Class for printing fiction, such as novelsnovelReadmeRobert Allgeyer
class, pdf processpdfarticle – Class for pdf publicationspdfarticleReadmeRobert Paciorek
diagrams, graphics, luatex, mol bio, pgf tikzpgfmolbio – Draw graphs typically found in molecular biology textspgfmolbioReadmeWolfgang Esser-Skala (inactive)
layout, luatexplaceat – Absolute content positioningplaceatReadmeArno L Trautmann
callback, luatexPyLuaTeX – Execute Python code on the fly in your LaTeX documentspyluatexReadmeTobias Enderle
luatex, typesettingselnolig – Selectively disable typographic ligaturesselnoligReadmeMico Loretan
calendar, luatex, planningsemesterplanner – Create beautiful semester timetables and moresemesterplannerReadmeNiklas Schneider
calendar, luatex, planningsemesterplannerLua – Draw timetables and other organizational matters useful for planning a semestersemesterplannerLuaReadmeLukas Heindl
debug supp, hyphenation, luatexshowhyphenation – Marking of hyphenation pointsshowhyphenationReadmeThomas Kelkel
luatexshowkerning – Showing kerns in a documentshowkerningReadmeThomas Kelkel
crossword puzzle, games, puzzlesoup – Generate alphabet soup puzzlessoupReadmeThomas Simers
letterspacespacekern – Kerning between words and against spacespacekernReadmeThomas Kelkel
logic, luatex, mathstruthtable – Automatically generate truth tables for given variables and statementstruthtableReadmeDominic Flück
typesettingtypewriter – Typeset with a randomly variable monospace fonttypewriterReadmeDavid Carlisle
calendar, class, luatex, use luawallcalendar – A wall calendar class with custom layoutswallcalendarReadmeGambhīro Bhikkhu
format, luatex, plain extOpTeX – LuaTeX format based on Plain TeX and OPmacoptexReadmePetr Olšák
logic, mathsgfnotation – Typeset Gottlob Frege’s notation in plain TeXgfnotationReadmeUdo Wermuth
astrology, font supp symbol, unicodealchemist – Typeset alchemist and astrological symbolsalchemistReadmeEngelbert Buxbaum
article-like, class, multi-lingualeinfart – Write your articles in a simple and clear wayeinfartReadmeJinwen XU
graphics, graphics useemotion – Make emojis more easy to use in XeLaTeX and LuaLaTeXemotionReadmeXuwang Zeng
font, music, music font, otf fontlilyglyphs – Access lilypond fragments and glyphs, in LaTeXlilyglyphsReadmeUrs Liska
multi-lingual, use luatex, use xetexpolyglossia – An alternative to babel for XeLaTeX and LuaLaTeXpolyglossiaReadmeArthur Rosendahl, François Charette (inactive), Jürgen Spitzmüller
typesettingswungdash – Typeset a swung dash in LaTeXswungdashReadmeElijah Z Granet
typesetting, unicodetextcsc – Simple commands for caps-to-small-caps texttextcscReadmeElijah Z Granet
class, dissertationudiss – A LaTeX bundle for typesetting dissertationsudissReadmeC. V. Radhakrishnan, The Indian TeX Users Group, निरंजन
string, xetexxesearch – A string finder for XeTeXxesearchReadmePaul Isambert (inactive), Yuri Robbers
class, file card, qr code, xetexbusinesscard-qrcode – Business cards with QR-Codebusinesscard-qrcodeReadmeMarc Wäckerlin
chinese, exam, xetexexam-zh – LaTeX template for Chinese examsexam-zhReadmeKangwei Xia, Lijun Guo
font developmentfontbook – Generate a font bookfontbookReadmeRaphaël Pinson
Font sel, Font support, Unicodefontwrap – Bind fonts to specific unicode blocksfontwrapReadmeMike Kamermans
chinese, xetexhanzibox – Boxed Chinese characters with Pinyin above and translation belowhanziboxReadmeNan Geng
biology, chinese, class, covers, labels, xetexnanicolle – Typesetting herbarium specimen labelsnanicolleReadmeYuchang Yang
font support, xetexucharclasses – Font actions in XeTeX according to what is being processeducharclassesReadmeMike Kamermans
chinese, japanese, korean, xetexxecjk – Support for CJK documents in XeLaTeXxecjkReadmeJiang Jiang (inactive), Leo Liu, Qing Lee, Wenchang Sun (inactive)
colourxespotcolor – Spot colours support for XeLaTeXxespotcolorReadmeApostolos Syropoulos, Jens Elstner (inactive)
font supp maths, maths, plain ext, unicode, xetexunimath-plain-xetex – OpenType math support in (plain) XeTeXunimath-plain-xetexReadmeTingxuan Zhang
body font, cyrillic font, font, font serif, font support, font t1enc, font ttf, font type1, greek font, multilingual font, proportional fontgentium-tug – Gentium fonts (in two formats) and support filesgentium-tugReadmeKarl Berry, Mojca Miklavec (inactive), Pavel Farar, Thomas A. Schmitz (inactive)
maths, obsolete, pgf tikzpenrose – A TikZ library for producing Penrose tilingspenroseReadmeAndrew Stacey
obsolete, pstricksrputover – Place text over PSTricks objects without obscuring background colorsrputoverReadmeMartin J. Osborne
documentation, maths documentation, obsoletevoss-mathmode – A comprehensive review of mathematics in (La)TeXvoss-mathmodeReadmeHerbert Voß
labratory diagrams, obsoletecontext-chromato – ConTeXt macros for chromatogramscontext-chromato/Peter Münster
notes, obsoletembenotes – Notes in tables or imagesmbenotesReadmeMatthias Borck-Elsner
maths, maths theorem, obsoletethmlist – A LaTeX package for adding theorem environments quicklythmlistReadmeMingyu Xia
graphics plottkz-kiviat – Draw Kiviat graphstkz-kiviatReadmeAlain Matthes
graphics use, pgf tikztkz-linknodes – Link nodes in mathematical environmentstkz-linknodesReadmeAlain Matthes
hyphenation, luatex, obsoleteshowhyphens – Show all possible hyphenations in LuaLaTeXshowhyphensReadmePatrick Gundlach
music, obsoletemusictex – Typesetting music with TeXmusictexReadmeDaniel Taupin (deceased)
musicTeXmuse – Music typesetting system using TeX and METAFONTtexmuseReadmeFederico Garcia-De Castro
compilationarara – Automation of LaTeX compilationararaReadmePaulo Roberto Massa Cereda
archival, bundlebundledoc – Bundle together all the files needed to build a LaTeX documentbundledocReadmeScott Pakin
ctanctanify – Prepare a package for upload to CTANctanifyReadmeScott Pakin
graphics enginegrapher – Create graphs, state machine and data flow diagramsgrapher/Manuel Gutierrez Algaba
chords, musicgregoriotex – Engraving Gregorian Chant scoresgregoriotexReadmeÉlie Roux, Fr. Samuel Springuel, Henry So
document managementlatexdiff – Determine and mark up significant differences between LaTeX fileslatexdiffReadmeFrederik Tilmann
compilationlatexmk – Fully automated LaTeX document generationlatexmkReadmeDavid J. Musliner (inactive), Evan McLean (inactive), John Collins
chunks, graphics, subdocsltximg – Extract LaTeX environments into separate image filesltximgReadmePablo González Luengo
musicM-Tx – A preprocessor for pmxm-txReadmeBob Tennent, Dirk Laurie (deceased)
convert htmlmake4ht – A build system for tex4htmake4htReadmeMichal Hoftich
graphicsmkpic – Perl interface to mfpicmkpicReadmeWybo H. Dekker
biblio supportorderrefs – Sort bibliography in LaTeX document by order of citationorderrefsReadmeJohn Collins
db accessSQLTeX – An SQL Preprocessor for LaTeXsqltexReadmeOscar van Eijk
diagrams, syntaxsyngen – A tool for generating syntax diagrams from BNFsyngenReadmeJens Klöcker
foreign import, tabletab4tex – Preprocessor for LaTeX tabular environmentstab4texReadmeGuido Milanese
compilation, compiler management, conditional compilation, use luaTeXBlend – Compile segments of LaTeX documentstexblendReadmeMichal Hoftich
word countTeXcount – Count words in a LaTeX documenttexcountReadmeEinar Andreas Rødland
enginepdftex – A TeX extension for direct creation of PDFpdftex/Hàn Thế Thành, The TeX Live Team, The pdfTeX Team
indexxindy – A general-purpose index processorxindy/Joachim Schrod, Roger Kehr
dvi processordvisvgm – Convert DVI, EPS, and PDF files to Scalable Vector Graphics format (SVG)dvisvgmReadmeMartin Gieseking
bibliobiber – A BibTeX replacement for users of BibLaTeXbiberReadmeFrançois Charette, Philip Kime
biblio, use luacitation-style-language – Bibliography formatting with Citation Style Languagecitation-style-languageReadmeZeping Lee
font, font supp symbol, font symbol, font type1, otf fontfontawesome7 – Font Awesome 7 with LaTeX supportfontawesome6ReadmeDaniel Nagel
body font, font, font t1enc, font type1, monospaced font, otf font, proportional font, sans fontplex – Support for IBM Plex fontsplexReadmeBob Tennent
font, font supp symbol, font symbol, font type1, otf fontsimpleicons – Simple Icons for LaTeXsimpleiconsReadmeInesh Bose
font, font collection, font serif, font type1, otf font, proportional font, sans fonttex-gyre – TeX Fonts extending freely available URW fontstex-gyreReadmeBogusław Jackowski, Janusz Marian Nowacki (deceased)
body font, font, font support, font t1enc, font type1, otf font, proportional font, sans fontclassico – URW Classico fontsclassicoReadmeBob Tennent
font, font supp maths, maths font, otf fontxcharter-math – XCharter-based OpenType Math font for LuaTeX and XeTeXxcharter-mathReadmeDaniel Flipo
graphics prepgapfill – Generate LaTeX picture environments from PostScript output of drawing programsgapfillReadmeHerbert Möller
chemistry, graphics, graphics metapostmcf2graph – Draw chemical structure diagrams with METAPOSTmcf2graphReadmeAkira Yamaji
graphics, graphics metapost, luatexbyrne – This package provides a set of tools to typeset geometric proofs in the style of Oliver Byrne’s 1847 ed. of Euclid’s “Elements”byrneReadmeSergey Slyusarev
diagrams, graphics, pgf tikzargumentation – Create abstract argumentation frameworks via TikZargumentationReadmeLars Bengel
experimental latex3, graphics, pgf tikzbroydensolve – Solve a system of equations with Broyden’s good methodbroydensolveReadmeMatthias Floré
experimental latex3, pgf tikzchar2path – A LaTeX package that converts characters into TikZ pathschar2pathReadmeMingyu Xia, Zongping Ding
amusements, graphics, pgf tikz, teachingfigchild – Pictures for creating children’s activitiesfigchildReadmeFernando de Souza Bastos
graphics, pgf tikzliftarm – Geometric constructions with liftarms using TikZ and LaTeX3liftarmReadmeMatthias Floré
3d graphics, graphics, luatex, pgf tikzlua-tikz3dtools – A LuaLaTeX package which improves on 3D capabilities in TikZlua-tikz3dtoolsReadmeJasper Nice
graphics in tex, optics, pgf tikz, physicsoptikz – Customizable optical components for drawing laser setups and optical systems using TikZoptikzReadmeMartin Beyer
graphics, pgf tikzOutilsGeomTikZ – Some geometric tools, with TikZoutilsgeomtikzReadmeCédric Pierquet
diagrams, graphics, maths, pgf tikz, physicspmdraw – Draw elements of the diagram monoidspmdrawReadmeMatthias Fresacher
graphics, pgf tikzpolynomial – Typeset (univariate) polynomialspolynomialReadmeMatthias Floré
games, pgf tikzScrabble – Commands for Scrabble boardsscrabbleReadmeCédric Pierquet
symbol supportthematicpuzzle – Horizontal banners in a puzzle stylethematicpuzzleReadmeCédric Pierquet
amusements, graphics, pgf tikztikz-decofonts – Simple decoration fontes, made with TikZ, for short textstikz-decofontsReadmeCédric Pierquet
graphics, pgf tikztikz-layers – TikZ provides graphical layers on TikZ: “behind”, “above” and “glass”tikz-layersReadmeRui Moutinho
graphics, pgf tikztikz-shields – Badges as in shields.io, but in LaTeXtikz-shieldsReadmeThomas Saigre
amusements, graphics, pgf tikztikzbrickfigurines – Draw brick figurines with TikZtikzbrickfigurinesReadmeCédric Pierquet
graphics, pgf tikzMatthias FloréwheelchartReadmeMatthias Floré
graphics subpic, pstrickspst-blur – PSTricks package for ““blurred”“ shadowspst-blurReadmeHerbert Voß, Martin Giese
calendar, pstrickspst-calendar – Plot calendars in ““fancy”“ wayspst-calendarReadmeHerbert Voß, Manuel Luque
graphics use, physics, pstrickspst-coil – A PSTricks package for coils, etcpst-coilReadmeHerbert Voß, Timothy Van Zandt (inactive)
index, index proclatex-indexer – Automate index generation for LaTeX documentslatex-indexerReadmeDavid Degenhardt
index, use luaxindex – Unicode-compatible index generationxindexReadmeHerbert Voß
tutorial cheat sheetplatexcheat – A LaTeX cheat sheet, in JapaneseplatexcheatReadmeTakuto Asakura
context, label and referencescrossrefenum – Smart typesetting of enumerated cross-references for various TeX formatscrossrefenumReadmeBastien Dumont
e-tex, macro demonstration, generic macrosvisualtoks – Typeset TeXbook-style visualisations of token listsvisualtoksReadmeplante
pseudocodealgxpar – Support multiple lines of pseudocodealgxparReadmeJander Moreira
presentationbeamerthemeCelestia – A modern and elegant Beamer themebeamerthemecelestiaReadmeRazik Ikhlef
class, presentationbeamer – A LaTeX class for producing presentations and slidesbeamerReadmeJoseph Wright, Louis Stuart (inactive), Till Tantau (inactive), Vedran Miletić (inactive), samcarter
biblatex, biblio, e-texBibLaTeX – Sophisticated Bibliographies in LaTeXbiblatexReadmePhilip Kime, Philipp Lehman (inactive)
document management, version controlchangelog – Typesetting keepachangelog.com style changelogschangelogReadmeRebecca Turner
calendar, diagrams, experimental latex3, pgf tikzchronos – TikZ-based package for drawing customisable timelines with support for colour schemes, styles and memoizationchronosReadmeClea F. Rees
boxing, colourCreationBoites – Macros to create simple tcolorbox with some customizationscreationboitesReadmeCédric Pierquet
crossword puzzle, gamescrosswrd – Macros for typesetting crossword puzzlescrosswrdReadmeBrian Hamilton Kelly (deceased), Frank Mittelbach (inactive)
float, tablectable – Flexible typesetting of table and figure floats using key/value directivesctableReadmeWybo H. Dekker
list, list enumumerateenumsub – Aligned inline sublists for enumitemenumsubReadmeSrikanth Mohankumar
graphics useepsdice – A scalable dice ““font”“epsdiceReadmeThomas Heim
defer stuffeverypage – Provide hooks to be run on every page of a documenteverypageReadmeSergio Callegari
macro demonstration, verbatimfancyvrb – Sophisticated verbatim textfancyvrbReadmeDenis Girou (inactive), Herbert Voß, Niall Mansfield (inactive), Sebastian Rahtz (deceased), Timothy Van Zandt (inactive)
graphics motion, graphics useflipbook – Typeset flipbook animations, in the corners of documentsflipbookReadmeOlivier Buffet
font sel, macro supportfontawesomescaled – Additional macros for fontawesome iconsfontawesomescaledReadmeCédric Pierquet
footnote, label and referencesfootnoterange – References to ranges of footnotesfootnoterangeReadmeHans-Martin Münch
adobe distiller, e-tex, form fillin, hyper, pdf featureshyperref – Extensive support for hypertext in LaTeXhyperrefReadmeHeiko Oberdiek (inactive), Oberdiek Package Support Group, Sebastian Rahtz (deceased), The LaTeX Project Team
experimental latex3, mathsintexgral – A LaTeX package for typesetting integralsintexgralReadmeValentin Dao
dummy generatoripsum – Insert multilingual placeholder textipsumReadmeCédric Pierquet
class, invoice, letterisodoc – A LaTeX class for typesetting letters and invoicesisodocReadmeWybo H. Dekker
boxing, latex3, pre releaseThe LaTeX Project TeamxcoffinsReadmeThe LaTeX Project Team
labelslabels – Print sheets of sticky labelslabelsReadmeGrant Gustafson (inactive), Julian Gilbey, Sebastian Rahtz (deceased)
boxing, layout, multicolumnleporello – A simple LaTeX document class to create folding flyers using columns and boxesleporelloReadmeJasper Habicht
hyper, maths theoremlinkedthm – Hyperlinked theorem–proof environments for LaTeXlinkedthmReadmeLuis Antonio Ortega Andrés
multicolumnlongtwocolumn – A twocolumn alternative allowing automatic page breakslongtwocolumnReadmeMarkus Kohm
graphics, text symbollucide-icons – Use lucide-icons through LaTeX commandslucide-iconsReadmeCédric Pierquet
gamesmulti-sudoku – Create and customise Sudoku grids of various sizesmulti-sudokuReadmeLuis F. Bartolo Alegre
graphics, text symbolopenmoji – Use openmoji through LaTeX commandsopenmojiReadmeCédric Pierquet
magazinepapertex – Class for newspapers, etcpapertexReadmeIgnacio Llopis
linguistic, parallelparacol – Multiple columns with texts “in parallel”paracolReadmeHiroshi Nakashima (deceased), Markus Kurtz
graphics in texpmgraph – ““Poor man’s”“ graphicspmgraphReadmeAlexander Berdnikov, Olga Grineva
boxing, decorationpostit – A LaTeX package for displaying Post-it notespostitReadmeCédric Pierquet
exam, pgf tikzquizztex – Create quizzes like in TV showsquizztexReadmeCédric Pierquet
parentheses managementrainbowbrackets – Automatic coloring of nested parenthesesrainbowbracketsReadmePaul Eduard Koenig
class, cookingrecipebook – Typeset 5.5““ x 8““ recipes for browsing or printingrecipebookReadmeBrad Granger
critical editionreledmac – Typeset scholarly editionsreledmacReadmeMaïeul Rouquette
numbersromanbar – Write roman number with ““bars”“romanbarReadmeHans-Martin Münch
games, graphics, pgf tikzrpgicons – Icons for tabletop role-playing gamesrpgiconsReadmeJasper Habicht
theologyscripture – A LaTeX style for typesetting Bible quotationsscriptureReadmeDavid Purton
boxing, computer science, presentationsim-os-menus – Insert ‘terminal’ or ‘context menu’ or ‘viewers’ like in an OSsim-os-menusReadmeCédric Pierquet
subsup positionspbmark – Customize superscripts and subscriptsspbmarkReadmeQu Yi
macro supportstackengine – Highly customised stacking of objects, insets, baseline changes, etcstackengineReadmeSteven B. Segletes
graphics, text symboltablerIcons – Use tablerIcons through LaTeX commandstablericonsReadmeCédric Pierquet
box breaking, boxing, colour, listing, macro demonstration, verbatimtcolorbox – Coloured boxes, for LaTeX examples and theorems, etctcolorboxReadmeThomas F. Sturm
toc etctocloft – Control table of contents, figures, etctocloftReadmePeter R. Wilson (inactive), Will Robertson
font, unicodeunicodefonttable – A Unicode font table generatorunicodefonttableReadmeFrank Mittelbach
multi-lingualbabel – Multilingual support for LaTeX, LuaLaTeX, XeLaTeX, and Plain TeXbabelReadmeJavier Bezos López, Johannes L. Braams (inactive)
listing, luatex, syntax highlightpiton – Typeset informatic listings with LPEG of LuaLaTeXpitonReadmeFrançois Pantigny
experimental latex3, luatex, pgf tikzseatingchart – Generation of seating chartsseatingchartReadmeMatthias Werner
code layoutlatexindent – Indent a LaTeX document, highlighting the programming structurelatexindentReadmeChris Hughes
compilationruntexfile – Automate the process of compiling (La)TeX documents with index, bibliography,…runtexfileReadmeHerbert Voß
pdf features, pdf viewshow-pdf-tags – Extract PDF tags from tagged PDF filesshow-pdf-tagsReadmeMarcel Krüger
e-booktex4ebook – Converter from LaTeX to ebook formatstex4ebookReadmeMichal Hoftich
print app, view appvpp – View and (selectively) Print PDF and PostScriptvppReadmeWybo H. Dekker
dvi structureDVIasm – A utility for editing DVI filesdviasmReadmeHironobu Yamashita, Jin-Hwan Cho (inactive), Khaled Hosny (inactive)
convert htmlTeX4ht – Convert (La)TeX to HTML/XMLTeX4htReadmeEitan M. Gurari (deceased), The TeX4ht Team
enginexetex – An extended variant of TeX for use with Unicode sourcesxetexReadmeArthur Rosendahl, Jonathan Kew, Khaled Hosny (inactive), The TeX Live Team
font, font adhoc, novelty fontransom – A ““very bad typewriter”“ fontransom/Donald E. Knuth
chess font, font, games, mf fontskak – Fonts and macros for typesetting chess gamesskakReadmeTorben Hoffmann
convert htmltex2page – Produce HTML from TeX/LaTeXtex2page/Dorai Sitaram

Font

resource

mark

extra

cache

Midjourney

resource

cache

Web

reference

cross-reference

mark

cache

resource

mark

later

extra

cache

css

resource

cache

js

resource

mark

cache

Medusa

reference

PocketBase

reference

Retype

install

# Node.js
pnpm add -g retypeapp

usage

mkdir <dir>
cd <dir>
retype start
# Serve
retype watch
# Build
retype build

reference

Sphinx

install

1 2

mkdir <site>
cd <site>
uv venv
.venv\Scripts\activate.bat
uv pip install furo myst-parser

usage

sphinx-quickstart
# make clean
make html
# uv pip install sphinx-autobuild
# sphinx-autobuild . _bulid

reference

resource

mark

later

extra

cache


  1. Furo

  2. Markdown

stagit

install

# Arch
git clone git://git.codemadness.org/stagit
cd stagit
sudo apt install libgit2-dev
make
ln -s stagit ~/.local/bin/
ln -s stagit-index ~/.local/bin/

usage

mkdir <dir>
cd <dir>
cp <path_to_stagit>/style.css ./
mkdir <subdir1>
mkdir <subdir2>
mkdir source
git clone <repo1> source/<subdir1>
git clone <repo2> source/<subdir2>
cd <subdir1>
stagit ../source/<subdir1>
cd ../<subdir2>
stagit ../source/<subdir2>
cd ..
stagit-index source/<subdir1> source/<subdir2> > index.html
magick convert image.png -resize 96x96 favicon.png
magick convert image.png -resize 96x96 logo.png
ln -s favicon.png <subdir1>/
ln -s favicon.png <subdir2>/
ln -s logo.png <subdir1>/
ln -s logo.png <subdir2>/

Vivliostyle CLI

install

# Node.js
pnpm add -g @vivliostyle/cli

usage

mkdir <dir>
cd <dir>
vivliostyle init
subl vivliostyle.config.js
# Edit it as needed

I don’t know why, but sometimes after you use “vivliostyle preview”, you need to used Task Manager to find and stop the (multi-) chromium process.

vivliostyle preview
# Build html, pdf
vivliostyle build
# Build epub
vivliostyle build --format epub -o <file>.epub

reference

annex

vivliostyle_01 vivliostyle_02 vivliostyle_03

Hugo

install

# Windows 10
scoop install hugo-extended

reference

cross-reference

cache

resource

mark

cache

Quiet Foodie

install

hugo new site <dir>
cd <dir>
git clone --depth=1 https://github.com/paposeco/quietfoodie themes/quietfoodie
subl hugo.toml
# Refer to https://github.com/paposeco/quietfoodie?tab=readme-ov-file#configuration

usage

# Serve
hugo serve
# Build
hugo build

reference

mdBook

install

cargo install --force mdbook

usage

mdbook init <yourbook>
cd <yourbook>
# Serve
mdbook serve --open
# Build
mdbook build

reference

cross-reference

extra

cache

resource

extra

cache

cancel

mdbook-admonish

install

cargo install --force mdbook-admonish
mdbook-admonish install

Mdbook Embedify

install

# Cargo
cargo install --force mdbook-embedify

usage

# book.toml
[preprocessor.embedify]
# Bilibili
{% embed bilibili id="<id>" loading="lazy" %}
# Youtube
{% embed youtube id="<id>" loading="lazy" %}

reference

mdbook-force-relative-links

install

cargo install --force mdbook-force-relative-links

usage

# book.toml
[prepocessor.force-relative-links]
after = ["links"]

mdbook-tailor

install

cargo install --force mdbook-tailor

usage

# book.toml
[preprocessor.tailor]

MkDocs

reference

cross-reference

mark

resource

mark

extra

cache

Material for MkDocs

install

mkdir <site>
cd <site>
uv venv
.venv\Scripts\activate.bat
uv pip install mkdocs-material

usage

mkdocs new .
subl config.yaml
theme:
  name: material

reference

troubleshoot

bin

reference

cross-reference

mark

later

extra

cache

resource

mark

extra

later

cache

7-Zip

install

# Arch
sudo pacman -S 7zip
# Windows 10
scoop install 7zip
# Ubuntu 22 ARM
sudo pacman -S p7zip-full

command

# Decomporess with password
7z x $1 -p"<password>"
# Compress with volume size is 10m
7z a -v10m <compress_dir>.7z <compress_dir>

resource

cache

abbreviate

install

go install -v github.com/dnnrly/abbreviate@latest

act

install

yay -S --noconfirm act

usage

act -l
act -n
act

annex

act

agg

install

cargo install --git https://github.com/asciinema/agg

usage

agg --theme 1F1F28,FFFFFF,1F1F28,D55FFF,A6E22E,F4BF75,66D9EF,AE81FF,A1EFE4,F8F8F2,75715E,D55FFF,A6E22E,F4BF75,66D9EF,AE81FF,A1EFE4,F9F8F5 --speed 1.5 --font-family "IosevkaTerm NFM" --font-size 14 --fps-cap 30 "$1" _agg.gif
agg --theme asciinema --speed 1.5 --font-family "IosevkaTerm NFM" --font-size 14 --fps-cap 30 "$1" _agg.gif

alass

install

# Windows 10
scoop install alass

ascii-image-converter

install

# Arch
yay -S --noconfirm ascii-image-converter
# Windows 10
scoop install ascii-image-converter

usage

ascii-image-converter "$1" -C -b --dither -d 100,35

ASCII Silhouettify

install

# Node.js
pnpm add -g ascii-silhouettify

usage

ascii-silhouettify --input "$1"

annex

quasar-ascii-silhouettify

Aspell

install

# Arch
sudo pacman -S aspell aspell-en
# Windows 10
scoop install aspell

resource

cache

ass2srt

install

# Pip
uv tool install ass2srt

usage

ass2srt "$1.ass"

ast-grep

install

# Arch
pacman -S ast-grep
# Windows 10
scoop install ast-grep

Audio Waveform Image Generator

install

# Arch
yay -S --noconfirm audiowaveform

usage

audiowaveform -i "$1" -o "_audiowaveform.png" -z auto -w 1920 -h 150 --background-color fffff8 --waveform-color 111111 --axis-label-color fffff8 --border-color fffff8

autocast

install

# Arch
yay -S --noconfirm autocast
# Cargo
cargo install --force autocast

usage

autocast input.yaml output.cast

autocrop

install

# Pip
uv tool install autocrop

usage

autocrop "$1" _ac_"$1" 0.1
autocrop -i <input_dir> -o <output_dir> -w 400 -H 400 -e png

AutoTrace

install

# Arch
yay -S --noconfirm autotrace

usage

magick convert "$1" -define bmp:format=bmp3 _temp.bmp && autotrace -output-file _autotrace.svg -input-format bmp -despeckle-level <level> -color-count <num> _temp.bmp

Av1an

install

# Arch
sudo pacman -S av1an
# Cargo
cargo install --force av1an

usage

av1an -i "$1" -v "--cpu-used=3 --end-usage=q --cq-level=30 --threads=8" -w 10 --target-quality 95 -a "-c:a libopus -b:a 192k -ac 2" -l "_av1en.log" -o "_av1en.mp4"

Bark

install

git lfs install
git clone https://huggingface.co/spaces/suno/bark
cd bark
uv venv
.venv\Scripts\activate.bat
uv pip install torch --index-url https://download.pytorch.org/whl/cu121
uv pip install -e .

usage

uv pip install hf_transfer
python -m bark --text "<text>" --output_filename "temp.wav"

bat

install

# Arch
sudo pacman -S bat
# Windows 10
scoop install bat

config

Adding new syntaxes / language definitions

mkdir -p %USERPROFILE%/AppData/Roaming/bat/
cd %USERPROFILE%/AppData/Roaming/bat
mkdir syntaxes
cd syntaxes
git clone --depth=1 https://github.com/tellnobody1/sublime-purescript-syntax
cd ..
mkdir themes
cd themes
bat cache --build

usage

bat --list-themes | fzf --preview="bat --theme={} --color=always <file>"
bat

BatchPDFSign

usage

java -jar batchpdfsign-portable.jar -k <file.pfx> -p <password> -i "$1" -o "_batchpdfsign.pdf"

BeatPrints

Create eye-catching, Pinterest-style music posters effortlessly. BeatPrints integrates with Spotify and LRClib API to help you design custom posters for your favorite tracks or albums. [TrueMyst/BeatPrints]

轻松制作引人注目的Pinterest风格的音乐海报。BeatPrint与Spotify和LRClib API集成,帮助你为最喜欢的曲目或专辑设计自定义海报。 [TrueMyst/BeatPrints]

install

  1. Visit Spotify Developer Dashboard.
  2. Create app BeatPrints, add http://localhost on Redirect URIs (required).
  3. Go Settings, get Client ID, Client secret.
  4. Add SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET into PATH.
git clone --depth=1 https://github.com/TrueMyst/BeatPrints
cd BeatPrints
uv venv
.venv\Scripts\activate.bat
uv pip install -e .
uv pip install python-dotenv

config

1

# Windows 10
mkdir C:\Users\User\AppData\Roaming\BeatPrints
subl C:\Users\User\AppData\Roaming\BeatPrints\config.toml
[general]
search_limit = 7
output_directory = "C:\\Users\\User\\Downloads"

[credentials]
client_id = "SPOTIFY_CLIENT_ID"
client_secret = "SPOTIFY_CLIENT_SECRET"

usage

beatprints

reference

annex


  1. CLI Setup

Bob

install

Get bob from Releases.

usage

bob list-remote
bob install 0.10.0

Bombadillo

annex

bombadillo

broot

install

# Windows 10
scoop install broot

usage

broot
broot -c ":toggle_preview" <path_to>

reference

Btop

install

# Arch
sudo pacman -S btop
# Windows 10
scoop install btop

Carapace-bin

install

# Arch
yay -S --noconfirm carapace-bin
# Windows 10
scoop install carapace-bin

chafa

install

# Arch
sudo pacman -S chafa
# Windows 10
scoop install chafa

chezmoi

install

# Arch
sudo pacman -S chezmoi
# Windows 10
scoop install chezmoi

usage

1 2

# rm -rf ~/.local/share/chezmoi
# rm -rf ~/.config/chezmoi
chezmoi init
vim ~/.local/share/chezmoi/.chezmoiignore
<ignorefile>
<ignoredir>/
chezmoi add <your_dotfiles>
chezmoi cd
git remote add origin https://github.com/<user>/<repo>
git branch -M main
git add .
git commit -m "<commit>"
git push -u origin main

On another PC:

chezmoi init https://github.com/<user>/<repo>
chezmoi diff
chezmoi apply -v
# Pull updates
chezmoi update -v

  1. Dotfiles with Chezmoi

  2. Chezmoi: ignore files and subdirectories

ClamAV

install

Arch

[^1] [^2]

sudo pacman -S clamav
sudo vim /etc/clamav/freshclam.conf
sudo vim /etc/clamav/clamd.conf
# https://wiki.archlinux.org/title/ClamAV#Configuration

# Modify the following
ExtendedDetectionInfo yes
MaxDirectoryRecursion 20
DetectPUA yes
HeuristicAlerts yes
ScanPE yes
ScanELF yes
ScanOLE2 yes
ScanPDF yes
ScanSWF yes
ScanXMLDOCS yes
ScanHWP3 yes
ScanOneNote yes
ScanMail yes
ScanHTML yes
ScanArchive yes
Bytecode yes
AlertBrokenExecutables yes
AlertBrokenMedia yes
AlertEncrypted yes
AlertEncryptedArchive yes
AlertEncryptedDoc yes
AlertOLE2Macros yes
AlertPartitionIntersection yes

OnAccessMaxFileSize 100M
OnAccessIncludePath /home
OnAccessPrevention no
OnAccessExtraScanning yes
OnAccessExcludeUname clamav

VirusEvent /etc/clamav/virus-event.bash
sudo vim /etc/sudoers.d/clamav
clamav ALL = (ALL) NOPASSWD: SETENV: /usr/bin/notify-send
sudo vim /etc/clamav/virus-event.bash
 https://wiki.archlinux.org/title/ClamAV#Creating_notification_popups_for_alerts

!/bin/bash
PATH=/usr/bin
ALERT="Signature detected by clamav: $CLAM_VIRUSEVENT_VIRUSNAME in $CLAM_VIRUSEVENT_FILENAME"

 Send an alert to all graphical users.
for ADDRESS in /run/user/*; do
	USERID=${ADDRESS#/run/user/}
	/usr/bin/sudo -u "#$USERID" DBUS_SESSION_BUS_ADDRESS="unix:path=$ADDRESS/bus" PATH=${PATH} \
		/usr/bin/notify-send -w -u critical -i dialog-warning "Virus found!" "$ALERT"
done
sudo vim /etc/systemd/system/clamav-clamonacc.service
# clamonacc systemd service file primarily the work of ChadDevOps & Aaron Brighton
# See: https://medium.com/@aaronbrighton/installation-configuration-of-clamav-antivirus-on-ubuntu-18-04-a6416bab3b41#a340

[Unit]
Description=ClamAV On-Access Scanner
Documentation=man:clamonacc(8) man:clamd.conf(5) https://www.clamav.net/documents
Requires=clamav-daemon.service
After=clamav-daemon.service syslog.target network.target

[Service]
Type=simple
ExecStart=
ExecStart=/usr/sbin/clamonacc -F --fdpass --log=/var/log/clamav/clamonacc.log

[Install]
WantedBy=multi-user.target
# sudo mkdir /etc/systemd/system/clamav-clamonacc.service.d
# sudo chown clamav:clamav /var/log/clamav/clamonacc.log
sudo systemctl daemon-reload
sudo systemctl restart clamav-daemon.service
sudo systemctl enable --now clamav-clamonacc.service

freshclam

sudo freshclam
sudo systemctl enable --now clamav-freshclam.service

clamav-milter

sudo vim /etc/clamav/clamav-milter.conf
# https://wiki.archlinux.org/title/ClamAV#Using_the_milter

# Modify the following
MilterSocket /tmp/clamav-milter.socket
MilterSocketMode 660
FixStaleSocket yes
User clamav
MilterSocketGroup clamav
PidFile /run/clamav/clamav-milter.pid
TemporaryDirectory /tmp
ClamdSocket unix:/run/clamav/clamd.ctl
LogSyslog yes
LogInfected Basic
sudo vim /etc/systemd/system/clamav-milter.service
# https://wiki.archlinux.org/title/ClamAV#Using_the_milter

[Unit]
Description='ClamAV Milter'
After=clamav-daemon.service

[Service]
Type=forking
ExecStart=/usr/bin/clamav-milter --config-file /etc/clamav/clamav-milter.conf
Restart=Always

[Install]
WantedBy=multi-user.target
sudo systemctl enable --now clamav-milter.service

Fangfrish

sudo mkdir -m 0770 -p /var/lib/fangfrisch
sudo chgrp clamav /var/lib/fangfrisch
su root
cd /var/lib/fangfrisch
python3 -m venv venv
source venv/bin/activate
pip install fangfrisch
vim /etc/fangfrisch.conf
# Minimal example configuration, meant for testing.

[DEFAULT]
db_url = sqlite:////var/lib/fangfrisch/db.sqlite
local_directory = /var/lib/clamav

[urlhaus]
enabled = yes
fangfrisch --conf /etc/fangfrisch/fangfrisch.conf initdb
# su <user>
# sudo /var/lib/fangfrisch/venv/bin/fangfrisch --conf /etc/fangfrisch.conf initdb

Windows 10

scoop install clamav
mkdir -p <path_to>\ClamAV\database
subl <path_to>\freshclam.conf
DatabaseDirectory "<path_to>/ClamAV/database"
# Update database
freshclam

usage

# Test
curl https://secure.eicar.org/eicar.com.txt | clamscan -
# Scan a directory.
clamscan -r -i <dir>
# Scan a file with specified limits.
clamscan -v -a --max-filesize=1000M --max-scansize=1000M --alert-exceeds-max=yes <file>

reference

troubleshoot

[^1] ClamAV [^2] [SOLVED] clamav-clamonacc won’t start (easily)

clean-css

install

# Arch
yay -S --noconfirm nodejs-clean-css nodejs-clean-css-cli
# Npm
pnpm add -g clean-css clean-css-cli

Code2prompt

install

# Arch
yay -S --noconfirm code2prompt
# Cargo
cargo install --force code2prompt

color-matcher

install

# Pip
uv tool install color-matcher

usage

color-matcher -s "$1" -r "$2"

coloro

install

# Pip
uv tool install coloro

COOK

install

go install -v github.com/glitchedgitz/cook/v2/cmd/cook@latest

csview

install

# Arch
yay -S --noconfirm csview
# Windows 10
scoop install csview
# Cargo
cargo install --force csview

command

# Fetch and process markdown table from GitHub, cleaning up the format and converting to CSV
curl -k https://raw.githubusercontent.com/scillidan/WALLPAP-ENG-resource/main/table.md | sd "\[\d{10}\]\(" "" | sd "(\)\|\S+subsc)" "|![](//img.shields.io/steam/subsc" | mdtable2csv | sd "//steamc" "https://steamc" | xsv select source,version,urlid | csview

CUDA

install

Windows 10

  1. Check Your GPU Compute Capability.
  2. Install python 3.10 from Python Releases for Windows. I test on 3.10.11.
  3. Install CUDA from CUDA Toolkit - Downloads. I used CUDA 12.1.0.
  4. Check PyTorch - Start Locally to install `torch``.
# Check
python --version
nvcc -V
echo %CUDA_PATH%
# echo %CUDA_PATH_V12_1%

curl

# Arch
sudo pacman -S curl
# Windows 10
scoop install curl

reference

reference

mark

daktilo

install

# Arch
sudo pacman -S daktilo
# Cargo
cargo install --force daktilo

dedoc

install

# Cargo
cargo install dedoc

config

# Windows 10
set "DEDOC_HOME=%USERPROFILE%\Usr\Data\dedoc"

deep-translator

install

# Pip
uv tool install deep-translator

dict-ecdict

install

1

# Ubuntu 22 ARM
sudo apt install unzip p7zip-full dictfmt dictzip python-is-python3
git clone --depth=1 --single-branch -b master https://github.com/tuberry/dict-ecdict
cd ./dict-ecdict
make
# sudo make install

  1. How can I uncompress a *.7z file?

DidYouMean

# Cargo
cargo install --force didyoumean

doc2dash

install

# Pip
uv tool install doc2dash

usage

# See <Document>.docset/Contents/Info.plist
doc2dash --name <identifier> -f ./build/html
mv <identifier>.docset <Document>.docset
# Put icon.png, icon@2x.png into <Document>.docset/
vim <DocumentName>.docset/Contents/Info.plist
<key>CFBundleName</key>
<string>Document (Version)</string>

Push to Kapeli/Dash-User-Contributions

[^1]

  1. Fork https://github.com/Kapeli/Dash-User-Contributions
  2. Fork Repo → Sync fork → Update branch
git clone https://github.com/<your>/Dash-User-Contributions
cd Dash-User-Contributions
# Sync to upstream
git pull
git checkout -b "<DocumentName>-<Version>"
tar --exclude='.DS_Store' -cvzf <DocumentName>.tgz <DocumentName>.docset
mv <DocumentName>.tgz Dash-User-Contributions/docsets/<DocumentName>/
vim Dash-User-Contributions/docsets/<DocumentName>/docset.json
{
    "name": "Document Name",
    "version": "<Version>",
    "archive": "<DocumentName>.tgz"
}
# If you build a specific versions
mv <DocumentName-Version>.tgz Dash-User-Contributions/docsets/<DocumentName>/versions/<SpecificVersion>/
vim Dash-User-Contributions/docsets/<DocumentName>/docset.json
    "specific_versions": [
        {
            "version": "<SpecificVersion>",
            "archive": "versions/<SpecificVersion>/<DocumentName>.tgz"
        },
        ...
    ]
git add .
git commit -m "Update <DocumentName> to Version>"
git push -u origin <DocumentName>-<Versison>

Visit `https://github.com/<your>/Dash-User-Contributions` → Create Pull requests → Waiting check and merge.

## reference

- [Docset Contribution Checklist](https://github.com/Kapeli/Dash-User-Contributions/wiki/Docset-Contribution-Checklist#docset-requirements)

[^1]: [Contributions](https://github.com/MarcDiethelm/contributing)

doggo

install

# Arch
yay -S --noconfirm doggo-bin
# Windows 10
scoop install doggo

Dolt

install

# Windows 10
scoop install dolt

usage

dolt config --global --add user.email "user@example.com"
dolt config --global --add user.name "username"
dolt login
mkdir database_1
cd database_1
dolt init
dolt remote add origin scillidan/database_1
dolt table import --create-table --pk column_1 table_1 table_1.csv
dolt add table_1
dolt commit -m "add table_1"
# dolt status
# dolt pull origin main
dolt push origin main
# Export to csv
dolt sql -r csv -q "SELECT * FROM `blog` > file.csv

reference

Doom Emacs

annex

doomemacs

Dufs

install

# Arch
yay -S --noconfirm dufs-bin
# Windows 10
scoop install dufs

dvipdfm

usage

dvipdfm "$1"

echo-cli

install

# Node.js
pnpm add -g echo-cli

epub2tts

install

git clone --depth=1 https://github.com/aedocw/epub2tts
cd epub2tts
uv venv --python 3.11.11
.venv\Scripts\activate.bat
uv pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu121
uv pip install coqui-tts --only-binary spacy
uv pip install -e .

usage

epub2tts <epub> --export txt
epub2tts <txt> --engine tts --speaker "<Speaker>" --cover cover-image.jpg --sayparts

troubleshoot

Edit requirements.txt1:

# deepspeed

  1. “Unable to import torch” error on Windows

EPUB to Audiobook Converter

install

git clone --depth=1 https://github.com/p0n1/epub_to_audiobook
cd epub_to_audiobook
uv venv
.venv\Scripts\activate.bat
uv pip install -r requirements.txt

usage

python main.py --tts edge --language en-US <epub> <output_folder>

erdtree (erd)

install

# Arch
sudo pacman -S erdtree
# Windows 10
scoop install erdtree

euporie

annex

euporie

eva

install

# Arch
sudo pacman -S eva
# Windows 10
scoop install eva
# Cargo
cargo install --force eva

eza

install

# Arch
sudo pacman -S eza
# Windows 10
scoop install eza

help

--classify                在每个列出的文件后附加一个字符以指示其类型(例如,/表示目录)
--color-scale             启用文件大小的颜色刻度
--git                     启用Git集成功能,以显示Git状态图标
--git-ignore              忽略在.gitignore中指定的文件
--group                   在列表中将相似的文件分组
--group-directories-first 在列出内容时优先显示目录,再显示文件
--header                  添加标题
--icons                   启用文件和目录的图标支持
--sort=modified           根据修改时间排序
--time-style=long-iso     以长ISO格式格式化时间显示
--tree                    树状视图
-a                        包括隐藏文件
-b                        显示每个文件的索引节点编号
-g                        长格式,但不显示所有者
-h                        以人类可读的方式显示文件大小
-H                        跟随符号链接
-i                        显示索引节点编号
-l --long                 长格式
-m                        以多列格式输出非目录文件
-S                        按文件大小排序
-U                        按访问时间排序文件

Fastfetch

install

# Arch
sudo pacman -S fastfetch
# Windows
scoop install fastfetch

faviator

usage

faviator --size 512 --text "$1" --font-size 12 --font-family "Pridi" --font-color #000 --font-weight 400 --background-color #fff --border-width 0 --border-color 0 --border-radius 0 -o favicon.png

Favocon

install

cargo isntall favocon

usage

favocon "$1" -o ./favicon

fd

install

# Arch
sudo pacman -S fd
# Windows 10
scoop install fd

FFmpeg

install

# Arch
sudo pacman -S ffmpeg
# Windows 10
scoop install ffmpeg

Personal do

Windows 10

  1. Get ffmpeg-master-latest-win64-gpl-shared.zip from FFmpeg Static Auto-Builds - Releases.
  2. Add ffmpeg-gpl-shared\bin into PATH.

command

# Batch convert FLAC to MP3
find . -type f \( -iname "*.wav" -o -iname "*.flac" -o -iname "*.m4a" \) -print0 | xargs -0 -I {} ffmpeg -i "{}" -c:a libmp3lame -ar 44100 -b:a 256k -maxrate 320k -minrate 128k -bufsize 320k "{}.mp3"
# Batch convert FLACs to one MP3
find . -maxdepth 1 -type f -name '*.flac' | sort | sed "s|^\./\(.*\)$|file '\1'|" > _temp.txt
ffmpeg -f concat -safe 0 -i _temp.txt -codec:a libmp3lame -qscale:a 1 _.mp3

# Convert Audio to OGG
ffmpeg -i "$1" -map_metadata -1 -c:a libvorbis -b:a 64k -compression_level 10 -vn _.ogg
# For Music encoding
ffmpeg -i "$1" -c:a libvorbis -ar 44100 -b:a 256k -maxrate 320k -minrate 128k -bufsize 320k _.ogg
# For Voice recording
ffmpeg -i "$1" -c:a libvorbis -ar 44100 -b:a 128k -maxrate 192k -minrate 64k -bufsize 192k _.ogg

# Convert FLAC to M4B
ffmpeg -i "$1.flac" -c:a aac -b:a 128k -minrate 64k -maxrate 192k -ar 44100 _.m4b
# Convert Audio to optimized M4B
ffmpeg -i "$1" -map 0:a -map_metadata 0 -c:a aac -b:a 64k -id3v2_version 3 -movflags +faststart _opti.m4b

# Convert M4A track to MP3
ffmpeg -i "$1" -c:a libmp3lame -q:a 8 _.mp3
ffmpeg -i "$1" -vn -c:a libmp3lame -b:a 224K -ac 2 _.mp3

# Convert AAC to MP3
ffmpeg -i "$1" -codec:a libmp3lame -qscale:a 1 _.mp3

# Convert Video to MP4 with AC3 track
ffmpeg -i "$1" -map 0 -c:v copy -c:a ac3 -b:a 256K -ac 2 -c:s copy _.mp4

# Convert GIF/APNG to MP4
ffmpeg -i "$1.gif/apng" -movflags faststart -pix_fmt yuv420p -vf "fps=30,scale=trunc(iw/2)*2:trunc(ih/2)*2" -c:v libx264 -crf 23 -preset veryslow _.mp4

# Generate MP4 from autocast
autocast "$1.yaml" _temp.cast
agg --theme asciinema --speed 1.5 --font-family "IosevkaTerm Nerd Font Mono" --font-size 14 --fps-cap 30 _temp.cast _temp.gif
ffmpeg -i _temp.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" _.mp4

# Create Video from Image
ffmpeg -framerate 1 -i "$04d.png" -c:v libx264 -r 30 -pix_fmt yuv420p _.mp4
ffmpeg -framerate 30 -i "$04d.png" -c:v libx264 -pix_fmt yuv420p _.mp4
ffmpeg -loop 1 -i "$1" -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -c:v libx264 -t 1 -pix_fmt yuv420p _.mp4

# Extract frame as poster
ffmpeg -i "$1.mp4" -vframes 1 _poster.jpg
# Extract Audio as MP3
ffmpeg -i "$1" -vn -acodec libmp3lame -ab 192k -ar 44100 -y _.mp3

# Export SRT subtitle
ffmpeg -i "$1" -map 0:s:0 _.srt
# Export SUP subtitle
ffmpeg -i "$1" -map 0:s:0 -c:s copy _.sup

reference

FFsubsync

install

# Pip
uv tool install ffsubsync
``

find

reference

fishdraw

install

git clone --depth=1 https://github.com/LingDong-/fishdraw
cd fishdraw

usage

node fishdraw.js --seed "$1" --format smil --speed 2 > _fishdraw.svg

fontTools

install

# Arch
sudo pacman -S python-fonttools
# Pip
uv tool install fonttools

usage

# Generate a Latin subset of a TTF file into a WOFF2 format
pyftsubset "$1" --output-file="_latin.woff2" --flavor=woff2 --layout-features=* --unicodes="U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD"

fzf

It’s an interactive filter program for any kind of list; files, command history, processes, hostnames, bookmarks, git commits, etc. It implements a “fuzzy” matching algorithm, so you can quickly type in patterns with omitted characters and still get the results you want. [junegunn/fzf]

这是一个适用于任何列表的互动过滤程序;文件、命令历史记录、进程、主机名、书签、git提交等。它实现了一种“模糊”匹配算法,因此您可以快速输入省略字符的模式,依然可以获得您想要的结果。 [junegunn/fzf]

install

# Arch
sudo pacman -S fzf
# Windows 10
scoop install fzf

reference

resource

later

annex

Gethash

install

# pipx
pipx install gethash
# Pip
uv tool install gethash

Gifski

install

# Arch
sudo pacman -S gifski
# Windows 10
scoop install gifski

usage

# Optimize GIF
gifski -o _opti.gif "$input_file"

# Optimize GIF with special width, height, and fps
gifski --width 600 --height 600 --fps 10 -o _opti.gif "$input_file"

# Optimize GIF with special quality, width
gifsicle -O3 --lossy=80 --resize-width 600 "$input_file" -o _opti.gif

Glow

install

# Arch
sudo pacman -S glow
# Windows 10
scoop install glow

G’MIC

command

# Apply match patch with warping
gmic "$1" "$2" +matchpatch[0] [1],3 +warp[-2] [-1],0

# Convert from sRGB to Lab color space, blend shapes
gmic "$1" +srgb2lab slic[-1] 16 +blend shapeaverage f[-2] "j(1,0)==i && j(0,1)==i" *[-1] [-2]

# Frame with specific parameters
gmic "$1" frame_xy 1,1,0 frame_xy 10,5,0,0,0

# Create a grid overlay on the image
gmic "$1" grid 10%,16%,0,0,0.2,255

# Apply Kuwahara filter to the image
gmic "$1" kuwahara 9

# Create a montage from the image
gmic "$1" montage H1:V0:VH2:1H0:3

# Quantize colors and apply blur
gmic "$1" quantize 6 blur 1 round[-1] quantize_area[-1] 2

# Quantize and split colors for display
gmic "$1" quantize 3 +split_colors , display_rgba

# Segment the image using watershed algorithm
gmic "$1" segment_watershed 4

# Apply topographic map effect
gmic "$1" topographic_map 10

GnuPG

install

sudo pacman -S gnupg

usage

gpg --full-generate-key

command

# Create a GnuPG directory and sync files from the user's GnuPG directory.
mkdir <path_to>/gnupg
rsync -av --progress ~/.gnupg/ <path_to>/gnupg

Godot MCP

install

git clone --depth=1 https://github.com/Coding-Solo/godot-mcp
cd godot-mcp
npm install
npm run build

config

VScodium → Extension → Cline → Manage MCP Servers → Settings → Configure MCP Servers.

{
  "mcpServers": {
    "godot": {
      "command": "node",
      "args": ["/path/to/godot-mcp/build/index.js"],
      "env": {
        "DEBUG": "true" // Optional: Enable detailed logging
      },
      "disabled": false,
      "autoApprove": [
        "launch_editor",
        "run_project",
        "get_debug_output",
        "stop_project",
        "get_godot_version",
        "list_projects",
        "get_project_info",
        "create_scene",
        "add_node",
        "load_sprite",
        "export_mesh_library",
        "save_scene",
        "get_uid",
        "update_project_uids"
      ]
    }
  }
}

Go OpenCC

install

go install -v github.com/razonyang/gopencc@latest

grep

reference

grex

install

# Arch
sudo pacman -S grex
# Windows 10
scoop install grex

GStreamer

install

# Windows 10
choco install gstreamer

HTMLMinifier

install

# Npm
pnpm add -g html-minifier

igir

annex

igir

ImageTheming

usage

java -jar imagetheming/build/libs/ImageTheming.jar "$1" -t=<theme>

Image Deduplicator

install

git clone --depth=1 https://github.com/idealo/imagededup
cd imagededup
uv python install 3.8.*
uv venv --python 3.8.*
.venv\Scripts\activate.bat
uv pip install "cython>=0.29" setuptools
python setup.py install

ImageMagick

install

# Arch
sudo pacman -S imagemagick
# Windows 10
scoop install imagemagick

command

# Add a border to an image
magick convert "$1" -bordercolor "#000" -border 1 "_border.png"

# Convert multiple PNG/JPEG images to a single PDF
magick convert "*.{png,jpeg}" -quality 100 "_output.pdf"

# Create a montage from an image
magick montage "$1" -resize 750x -geometry +0+0 -tile 1x "_montage.png"

# Crop the image from the top, keeping only the bottom 1500 pixels
magick convert "$1" -crop x1500 "_%d.png"

# Negate an image
magick convert "|.png" -channel RGB -negate _negate.png

# Resize the image to a height of 1600 pixels with maximum quality
magick convert "$1" -resize x1600 -quality 100 "_*.jpg"

# Apply paint effect to the image
magick convert "$1" -paint 3 "$2"

# Apply charcoal effect
magick convert "$1" -charcoal 2 "$2"

# Apply ordered dithering (gray)
magick convert "$1" -colorspace Gray -ordered-dither o2x2 "_dither.png"

# Apply ordered dithering (8 colors)
magick convert "$1" -ordered-dither h4x4o -colors 8 "_dither.png"

# Apply sketch effect
magick convert "$1" -colorspace gray -sketch 0x10+120 "_sketch.png"

# Convert BMP file to PNG format
magick mogrify -format png "$1"

reference

troubleshoot

insanely-fast-whisper-cli

install

git clone --depth=1 https://github.com/ochen1/insanely-fast-whisper-cli
cd insanely-fast-whisper-cli
uv venv
.venv\Scripts\activate.bat
uv pip install -r requirements.txt

usage

python insanely-fast-whisper.py --model openai/whisper-base --device cuda:0 --dtype float32 --batch-size 8 --better-transformer --chunk-length 30 <audio_file>.wav

issue2md

install

git clone --depth=1 https://github.com/bigwhite/issue2md
cd issue2md
make cmdline
# Arch
ln -sfn $(pwd)/issue2md ~/.local/bin/issue2md
# Windows 10
mklink %USERPROFILE%\.local\bin\issue2md.exe %CD%\issue2md

usage

issue2md <issue_url> file.md

jq

install

# Arch
sudo pacman -S jq
# Windows 10
scoop install jq

js-beautify

install

# Arch
yay -S --noconfirm js-beautify
# Npm
pnpm add -g js-beautify

ki-cli

install

# Node.js
pnpm add -g ki-cli

command

ki a b c foo.hoge bar.fuga baz.piyo long.long.long.depth | sed "s/├/-/g; s/│/ /g; s/└/-/g; s/──/--/g" | sed "s/-─/-/g"

Komga Cover Extractor

install

git clone --depth=1 https://github.com/zachstultz/komga-cover-extractor
cd komga-cover-extractor

usage

python komga_cover_extractor.py -c "True" -cq "70" -p .

lazydocker

install

# Arch
yay -S --noconfirm lazydocker-bin
# Windows 10
scoop install lazydocker

legumes

install

git clone --depth=1 https://github.com/LingDong-/legumes
cd legumes

usage

node legc --format svg --stem-length 3 --title-text-size 28 --page-margin-x 120 "$1" > _legumes.svg

libretrans

install

# Cargo
cargo install --force libretrans

usage

libretrans -u http://<your_host> en:zh "This is a text"

linkding-cli

annex

linkding-cli

Lipsync Generator: Rhubarb & Whisper AI

install

git clone --depth=1 https://github.com/fralapo/LipSyncify
cd LipSyncify
uv venv
.venv\Scripts\activate.bat
uv pip install torch torchaudio torchvision --extra-index-url https://download.pytorch.org/whl/cu121
uv pip install -r requirements.txt

usage

python3 generate_lipsync.py --background yellow

LRC to SRT Converter

install

git clone --depth=1 https://github.com/HUYDGD/lrc2srt
cd lrc2srt

usage

python lrc2srt.py <lrc_dir>

Lue

install

git clone --depth=1 https://github.com/superstarryeyes/lue
cd lue
uv venv .venv --python 3.10
source .venv/bin/activate
uv pip install torch torchvision torchaudio
uv pip install -r requirements.txt
uv pip install -e .
deactivate
ln -sfn $(pwd)/lue ~/.local/bin/lue

usage

lue <book>

Sync Lyrics and Produce an LRC file using spleeter, whisper, and text similarity.

install

conda create --name lyrics python=3.10.12
conda activate lyrics
pip install spleeter openai-whisper
pip uninstall numpy
pip install numpy==1.26.4

usage

python pysync sample.mp3 sample.txt
python pysync <music> <lyric>

M3U8

usage

m3u8 -u="$1" -o="_m3nu"

marker

install

uv venv
.venv\Scripts\activate.bat
uv pip install marker-pdf
uv pip install hf_transfer

usage

# As CLI
marker_single <pdf> --output_dir <output_dir> --page_range 1-5
# As GUI
uv pip install streamlit
marker_gui

man-db

install

sudo pacman -S man-db

usage

sudo mandb

MarkItDown

install

git clone --depth=1 https://github.com/microsoft/markitdown
cd markitdown
uv venv --python 3.12
.venv\Scripts\activate.bat
uv pip install -e "packages/markitdown[all]"

usage

markitdown file.pdf -o file.md

markpdf

usage

markpdf "$1" mark.png --opacity=0.3

A MCP server for Godot RAG

install

git clone --depth=1 https://github.com/weekitmo/mcp_godot_rag
cd mcp_godot_rag
uv venv --python=3.12
.venv\Scripts\activate.bat
uv sync
cp .env.example .env.local
python download_godot_docs.py
uv pip install docutils
python convert_rst2md.py
python chunker.py -i artifacts
python vectorizer.py -i artifacts/chunks/artifacts_chunks_SZ_400_O_20.jsonl
# Test
python main.py -d artifacts/vector_stores/chroma_db -c artifacts_chunks_SZ_400_O_20_all-MiniLM-L6-v2

config

VSCodium → Extension → Cline → Manage MCP Servers → Settings → Configure MCP Servers.

{
  "mcpServers": {
    "godot-rag": {
      "command": "/path/to/mcp_godot_rag/.venv/Scripts/python.exe",
      "args": [
        "/path/to/mcp_godot_rag/main.py",
        "-d",
        "/path/to/mcp_godot_rag/artifacts/vector_stores/chroma_db",
        "-c",
        "artifacts_chunks_SZ_400_O_20_all-MiniLM-L6-v2"
      ]
    }
  }
}

MDict Tool

usage

mdict.exe -x "汉语大词典(简体精排).mdx"  -d ./mdx

mecab

install

  1. Get mecab-0.98.exe from https://sourceforge.net/projects/mecab/files/mecab-win32/0.98/.
  2. Run mecab-0.98.exe
    • Dictionary Charset → SHIFT-JIS

reference

resource

cache

Miller

  • Miller is multi-purpose: it’s useful for data cleaning, data reduction, statistical reporting, devops, system administration, log-file processing, format conversion, and database-query post-processing.
  • You can use Miller to snarf and munge log-file data, including selecting out relevant substreams, then produce CSV format and load that into all-in-memory/data-frame utilities for further statistical and/or graphical processing.
  • Miller complements data-analysis tools such as R, pandas, etc.: you can use Miller to clean and prepare your data. While you can do basic statistics entirely in Miller, its streaming-data feature and single-pass algorithms enable you to reduce very large data sets.
  • Miller complements SQL databases: you can slice, dice, and reformat data on the client side on its way into or out of a database. You can also reap some of the benefits of databases for quick, setup-free one-off tasks when you just need to query some data in disk files in a hurry.
  • Miller also goes beyond the classic Unix tools by stepping fully into our modern, no-SQL world: its essential record-heterogeneity property allows Miller to operate on data where records with different schema (field names) are interleaved.
  • Miller is streaming: most operations need only a single record in memory at a time, rather than ingesting all input before producing any output. For those operations which require deeper retention (sort, tac, stats1), Miller retains only as much data as needed. This means that whenever functionally possible, you can operate on files which are larger than your system’s available RAM, and you can use Miller in tail -f contexts.
  • Miller is pipe-friendly and interoperates with the Unix toolkit.
  • Miller’s I/O formats include tabular pretty-printing, positionally indexed (Unix-toolkit style), CSV, TSV, JSON, JSON Lines, and others.
  • Miller does conversion between formats.
  • Miller’s processing is format-aware: e.g. CSV sort and tac keep header lines first.
  • Miller has high-throughput performance on par with the Unix toolkit.
  • Miller is written in portable, modern Go, with zero runtime dependencies. You can download or compile a single binary, scp it to a faraway machine, and expect it to work. [johnkerl/miller]
  • Miller是多用途的:它可用于数据清理、数据减少、统计报告、开发运维、系统管理、日志文件处理、格式转换和数据库查询后处理。
  • 您可以使用米勒来捕获并处理日志文件数据,包括选择相关的子流,然后生成CSV格式并将其加载到所有内存/数据框工具中,以进行进一步的统计和/或图形处理。
  • 米勒与数据分析工具(如R、pandas等)互补:您可以使用米勒来清理和准备您的数据。虽然您可以在米勒中完全进行基本统计,但它的流式数据特性和单遍算法使您能够减少非常大的数据集。
  • 米勒还与SQL数据库互补:您可以在客户端上对数据进行切片、重组和重新格式化,以便数据在进入或离开数据库时进行处理。当您急需快速查询磁盘文件中的数据时,您也可以从数据库中获得一些好处,用于快速、无需设置的一次性任务。
  • 米勒还超越了经典的Unix工具,完全迈入我们的现代无SQL世界:它的基本记录异构性特性允许米勒在记录具有不同架构(字段名称)交错的情况下进行操作。
  • 米勒是流式的:大多数操作每次只需要在内存中保留一个记录,而不是在生成任何输出之前就接收所有输入。对于那些需要更长时间保留的数据操作(排序、反向、统计1),米勒仅保留所需的数据量。这意味着在功能上可行的情况下,您可以操作比系统可用内存更大的文件,并且可以在tail -f环境中使用米勒。
  • 米勒与Unix工具包兼容,它是友好的管道工具。
  • 米勒的输入/输出格式包括表格美化打印、按位置索引(Unix工具包风格)、CSV、TSV、JSON、JSON Lines等。
  • 米勒可以在格式之间进行转换。
  • 米勒的处理是格式感知的:例如,CSV的排序和反向保留头行。
  • 米勒具有与Unix工具包相当的高通量性能。
  • 米勒是用可移植的现代Go语言编写的,没有任何运行时依赖。您可以下载或编译一个单一的二进制文件,将其scp到远程机器上,并期望它正常工作。 [johnkerl/miller]

install

# Arch
sudo pacman -S miller
# Windows 10
scoop install miller

MinIO Client

install

# Ubuntu 22 ARM
wget https://dl.min.io/client/mc/release/linux-arm64/mc
chmod +x mc
mv mc ~/.local/bin/
mkdir -p ~/minio_recursive
mc alias set <database_name> http://<your_host>:9000 <MINIO_ROOT_USER> <MINIO_ROOT_PASSWORD>
mc list <database_name>
mc cp --recursive <database_name>/ ~/minio_recursive/

mkcert

install

# Ubuntu 22 ARM
sudo apt install libnss3-tools

usage

mkcert -install
mkcert example.com "*.example.com" example.test localhost

mnamer

install

uv tool install mnamer

usage

# Rename all files in the current directory
mnamer -b .

mprocs

install

# Arch
yay -S --noconfirm mprocs-bin
# Windows 10
scoop install mprocs

mt

install

go install github.com/mutschler/mt@latest

usage

mt -n 16 -c 4 --disable-timestamps --header=false "$1"

annex

mt

mtn

install

# Arch
yay -S --noconfirm mtn
# Windows 10
scoop install mtn

usage

mtn -c 4 -r 4 -g 3 -k 000000 -w 1920 -i -t -D 4 -P -o "_mtn.png" "$1"

annex

mtn

musicnn

install

git clone --depth=1 https://github.com/jordipons/musicnn
cd musicnn

Windows 10

subl requirements.txt
audioread==3.0.1
librosa==0.8.1
musicnn==0.1.0
numpy==1.16.6
pandas==1.1.5
scikit-learn==0.24.2
scipy==1.5.4
soundfile==0.12.1
tensorflow==2.3.4
resampy==0.2.2
ipython==7.16.3
conda create --name musicnn python=3.6.13
conda activate musicnn
pip install -r requirements.txt
pip install matplotlib
conda install  ipykernel jupyterlab
python -m ipykernel install --user --name musicnn
jupter lab

Arch

1

uv python install 3.7.9
uv venv --python 3.7.9
source .venv\Scripts\activate.bat
uv pip install -e .
uv pip install matplotlib
yay -S libxcrypt-compat
uv run --with jupyter jupyter lab

  1. Using uv with Jupyter

musikcube

annex

musikcube

n8n MCP Server

install

git clone --depth=1 https://github.com/leonardsellem/n8n-mcp-server
cd n8n-mcp-server
npm install
npm run build
cp .env.example .env
subl .env
N8N_API_URL=http://localhost:5678/api/v1
N8N_API_KEY=<n8n_apikey>
DEBUG=false
N8N_WEBHOOK_USERNAME=<user>
N8N_WEBHOOK_PASSWORD=<password>

Get <n8n_apikey> from n8n:

  1. n8n → Settings → n8n API → Create an API Key.
  2. Label n8n-mcp-server, Expiration No Expiration → Save.
# Test
node build/index.js

config

VSCodium → Extension → Cline → Manage MCP Servers → Settings → Configure MCP Servers.

{
  "mcpServers": {
    "n8n-local": {
      "autoApprove": [],
      "disabled": false,
      "timeout": 60,
      "command": "node",
      "args": [
        "C:/Users/User/Usr/Script/n8n-mcp-server/build/index.js"
      ],
      "env": {
        "N8N_API_URL": "http://localhost:5678/api/v1",
        "N8N_API_KEY": "<your_n8n_apikey>",
        "N8N_WEBHOOK_USERNAME": "<username>",
        "N8N_WEBHOOK_PASSWORD": "<password>"
      },
      "transportType": "stdio"
    }
  }
}

Neovide

This is a simple graphical user interface for Neovim (an aggressively refactored and updated Vim editor). Where possible there are some graphical improvements, but functionally it should act like the terminal UI. [neovide/neovide]

这是一个简单的Neovim图形用户界面(一个经过激进重构和更新的Vim编辑器)。在可行的情况下进行了一些图形改进,但在功能上应该像终端用户界面一样运行。 [neovide/neovide]

install

# Arch 
sudo pacman -S neovide
# Windows 10
scoop install neovide

setting

1

# Arch
mkdir ~/.config/neovide
vim ~/.config/neovide/config.toml
# Windows 10
mkdir %APPDATA%\neovide
subl %APPDATA%\neovide\config.toml

usage

# Launch Neovide with specific settings
neovide --size=1250x720 --frame none --no-tabs --wsl archwsl

# Unrecommended method to connect to a server with Neovide
ssh <username>@<your_host> -L 1234:0.0.0.0:1234 -- /home/<username>/.local/bin/nvim --headless --listen 0.0.0.0:1234
neovide --server <your_host>:1234

reference


  1. Config File - Neovide

npms-cli

install

# Node.js
pnpm add -g npms-cli

annex

npms-cli

Ollama

install

# Windows 10
scoop install ollama-full

usage

ollama pull llama3
ollama pull llama3.1
# ollama pull qwen2.5-coder:3b
# ollama pull qwen2.5-coder:7b
# ollama pull qwen3:14b
ollama pull nomic-embed-text
ollama list

config

1

Add into environment:

OLLAMA_HOST=0.0.0.0
OLLAMA_ORIGINS=*

reference

  • #post [Navigating the World of Open-Source Large Language Models]https://www.bentoml.com/blog/navigating-the-world-of-large-language-models)

  1. Ollama Connection issues FAQ help

open-cli

install

# Node.js
pnpm add -g open-cli

open-pdf-sign

usage

java -jar open-pdf-sign.jar --input "$1" --output "_open-pdf-sign.pdf" --certificate <file.crt> --key <file.pem> --passphrase <password> --page -1 --locale zh-CN

OpenCC

install

# Arch
sudo pacman -S opencc

uv

# Windows 10
uv venv .opencc --python 3.10
.opencc\Scripts\activate.bat
mklink %USERPROFILE%\.local\bin\opencc.exe %CD%\.opencc\Lib\site-packages\opencc\clib\bin\opencc.exe
deactivate.bat

usage

# Arch
opencc -c /usr/share/opencc/t2s.json -i input.txt -o output.txt
# Windows 10
opencc -c <path_to>/.opencc/Lib/site-packages/opencc/clib/share/opencc/t2s.json -i input.txt -o output.txt

opencubicplayer

OpenType Sanitizer

usage

ots-sanitize <ttf> <otf>

Oxipng

install

# Arch
sudo pacman -S oxipng
# Windows 10
scoop install oxipng

usage

oxipng -o 4 -i 1 --strip safe *.png

Paletter

usage

paletter -colors <num> "$1"

Pandoc

install

# Arch
sudo pacman -S pandoc-cli
# Windows 10
scoop install pandoc

usage

# Convert a reStructuredText (RST) file to Markdown format
pandoc "$1" -f rst -t markdown -o "_output.md"

Paperoni

install

pnpm add -g percollate

usage

paperoni "$1" --export epub

PDF ToC

install

uv tool install pdf-toc

usage

pdf-toc -t toc.txt -d "_pdf-toc.pdf" "$1"

Pdfalyzer

install

# Pip
uv tool install pdfalyzer

usage

pdfalyzer "$1"

Percollate

install

# Npm
pnpm add -g percollate

usage

# Convert html file to EPUB
percollate epub "$1" -o "_percollate.epub"

# Convert html file to PDF with specific CSS styles
percollate pdf "$1" -o "_percollate.pdf" --css ":root { --main-font: 'Beholden Medium';  --code-font: 'Beholden Medium'; --alt-font: 'Beholden Medium'; }"

PgsToSrt

usage

dotnet PgsToSrt.dll --input "$1.sup" --output "_pgstosrt.srt" --tesseractlanguage <language> --tesseractdata "<path_to>/tessdata_fast"

pip_search

install

# Pip
uv tool install pip_search

annex

pip_search

pipe-rename

install

# Arch
sudo pacman -S pipe-rename
# Cargo
cargo install --force pipe-rename

command

ls | renamer

png-to-ico

install

# Node.js
pnpm add -g png-to-ico

usage

png-to-ico "$1" > _png2ico.ico

png2svg

usage

png2svg -v -l -o "$1" _png2svg.svg

pngquant

install

# Arch
sudo pacman -S pngquant
# Windows 10
scoop install pngquant

posterust

presenterm

install

# Cargo
cargo install --force presenterm

usage

git clone --depth=1 https://github.com/mfontanini/presenterm
cd presenterm
presenterm --theme dark examples/demo.md
pipx install presenterm-export
presenterm --export-pdf --theme light examples/demo.md

Prettier

install

# Arch
sudo pacman -S prettier
# Npm
pnpm add -g prettier

usage

# Format a JSON file using Prettier
prettier --write --parser json "$1"

pro

install

go install -v github.com/wowu/pro@latest

Projz - RenyPy Translation Toolkit

install

git clone --depth=1 https://github.com/abse4411/projz_renpy_translation
cd projz_renpy_translation
uv venv
.venv\Scripts\activate.bat
cp requirements_full.txt requirements_full.txt.bak
subl requirements_full.txt
# torch==2.0.1+cu117
# torchaudio==2.0.2+cu117
# torchvision==0.15.2+cu117
uv pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118
uv pip install -r requirements_full.txt

usage

python main.py
n <game_dir> -n <game_name>
i <game_name> -l schinese
t <game_name> -t ai -n {model_name} -l schinese -b 4
17 22

pyLanguagetool

install

# uv (Windows 10)
uv venv .pyLanguagetool
.pyLanguagetool\Scripts\activate.bat
uv pip install --upgrade setuptools beautifulsoup4 pylanguagetool
mklink %USERPROFILE%\.local\bin\pylanguagetool.exe %CD%\.pyLanguagetool\Scripts\pylanguagetool.exe
deactivate.bat
# uv (Arch)
uv venv .pyLanguagetool
source .pyLanguagetool/bin/activate
uv pip install --upgrade setuptools beautifulsoup4 pyLanguagetool
ln -sfn "$(pwd)/.pyLanguagetool/bin/pylanguagetool" ~/.local/bin/pylanguagetool
deactivate.bat

usage

echo "This are a exampl" | pylanguagetool --lang en-US

汉字拼音转换工具(Python 版)

install

# Pip
uv tool install pypinyin

usage

pypinyin -s NORMAL <chinese_string>

Super Pyxelate

install

git clone --depth=1 https://github.com/sedthh/pyxelate
uv venv .venv --python 3.9
.venv\Scripts\activate.bat
uv pip install -r requirements.txt
uv pip install -e .

usage

pyxelate "$1" _pyxelate.png --factor 9 --upscale 5 --palette 10 --nosvd

qsv

install

# Arch
yay -S --noconfirm qsv-bin
# Windows 10
scoop install qsv

RapidVideOCR

install

1 2 3

# CPU
pip install rapid_videocr
# GPU
git clone --depth=1 https://github.com/SWHL/RapidVideOCR
uv venv
.venv\Scripts\activate.bat
uv pip install paddlepaddle-gpu==3.0.0b1 -i https://www.paddlepaddle.org.cn/packages/stable/cu123/
uv pip install get-pypi-latest-version
python setup.py install
# pip uninstall onnxruntime
# pip install onnxruntime-directml

command

# CPU
rapid_videocr -o srt -i <rgb_images_dir> -s _output
# GPU
uv pip install rapidocr_paddle
rapid_videocr --use_cuda -o srt -i <rgb_images_dir> -s _output
# With VideoSubFinder
rapid_videocr -vsf "<path_to>\VideoSubFinder\Release_x64\VideoSubFinderWXW.exe" -video_dir "$1"

cross-reference

mark

annex

rapidvideocr


  1. RapidVideOCR - 高级教程

  2. 飞桨 - 快速安装

  3. rapidocr_paddle - 安装及使用

Rclone

reference

rembg

install

pipx install "rembg[cli]"
pip install "rembg[gpu,cli]"
# pip install --upgrade click

usage

rembg i -a -ae 15 "$1" _rembg.png

Renamer

install

# Node.js
pnpm add -g @innocenzi/rename

usage

rn

reference

ripgrep

install

# Arch
sudo pacman -S ripgrep
sudo pacman -S ripgrep-all
# Windows 10
scoop install ripgrep
scoop install ripgrep-all

rsync

reference

resource

cache

russ

annex

russ

Sloc Cloc and Code (scc)

install

# Arch
yay -S --noconfirm scc
# windows 10
scoop install scc

sd

install

# Arch
sudo pacman -S sd
# Windows 10
scoop install sd

SeaGOAT

install

pipx install seagoat

usage

seagoat-server start <your_repo>

w2vgrep

usage

w2vgrep /C 2 /n /t 0.55 /m "<path_to>/googlenews-slim/GoogleNews-vectors-negative300-SLIM.bin" "$1" /f "$2"

Semantra

install

pipx install semantra

reference

serve

install

# Node.js
pnpm add -g serve

SF2 to SFZ Converter

install

git clone --depth=1 https://github.com/bashexplode/sf2-to-sfz
cd sf2-to-sfz
uv venv
.venv\Scripts\activate.bat
uv pip install sf2utils

usage

python sf2_to_sfz.py file.sf2 file.sfz

ShellGPT

install

1

ollama pull mistral:7b-instruct
# ollama pull llama3.1:8b
uv tool install "shell-gpt[litellm]"
subl C:\Users\User\.config\shell_gpt\.sgptrc
DEFAULT_MODEL=ollama/mistral:7b-instruct
# DEFAULT_MODEL=ollama/llama3.1:8b
OPENAI_USE_FUNCTIONS=false
USE_LITELLM=true

usage

sgpt "Hello Ollama"
sgpt "Resize images to 800x 0.9 quality jpg"
cat <code_file> | sgpt --code "Generate comments for each line of my code"

  1. Ollama

shot-scraper

install

git clone --depth=1 https://github.com/simonw/shot-scraper
cd shot-scraper
pipx install shot-scraper playwright
playwright install

usage

shot-scraper <url>

Silicon

install

# Arch
sudo pacman -S silicon
# Windows 10
scoop install silicon

command

silicon --from-clipboard --language "Text" --font "'IosevkaTerm NFM'=16" --no-window-controls --pad-horiz 0 --pad-vert 0 --background "#fffff8" --tab-width 2 --line-offset 0 --line-pad 4 --output _silicon.png

Simple_Speech_Recognition

install

git clone --depth=1 https://github.com/Temmie-Flakes/Simple_Speech_Recognition
cd Simple_Speech_Recognition
uv venv
.venv\Scripts\activate.bat
uv pip install torch --index-url https://download.pytorch.org/whl/cu121
uv pip install -r requirements.txt
uv pip install hf_transfer
  1. Read RunBaseModel.bat.
  2. Create other .bat you need liked RunMediumModel.bat.
  3. Run .bat.

so

annex

so

split-manga-pages

install

# Pip
uv tool install split_manga_pages

usage

split_manga_pages -d <dir> -m all

spongebob-cli

install

git clone https://github.com/trakBan/spongebob-cli
cd spongebob-cli
uv venv
.venv\Scripts\activate.bat
uv pip install -e .

usage

python spongebob-cli

SRT to VTT Command Line

usage

srt-vtt "$1"

SSHFS

install

# Arch
sudo pacman -S sshfs
# Ubuntu 22 ARM
sudo apt install sshfs

usage

Windows client

  1. Get winfsp-*.msi form WinFsp - Releases.
  2. Get sshfs-win-*-x64.msi from SSHFS-Win - Releases.
  3. Get sshfs-win-manager-*.zip from SSHFS-Win Manager - Releases.
  4. SSHFS-Win Manager → Add Connection.

starfetch

install

# ArchWSL
git clone --depth=1 https://github.com/Haruno19/starfetch
cd starfetch
make -j8
sudo make install
# MSYS2
git clone --depth=1 https://github.com/K1ngst0m/starfetch
cd starfetch
make
# Cargo
git clone --depth=1 https://github.com/CoderCharmander/starfetch
cargo build

usage

# ArchWSL
starfetch -r
# MSYS2
./starfetch.exe -r
# Cargo
~/.cargo/tmp/debug/starfetch -d
starfetch -L
starfetch orion

resource

Starship

install

# Windows 10
scoop install starship

stylua

install

# Arch
sudo pacman -S stylua
# Windows 10
scoop install stylua

sub-batch

Match and rename subtitles to videos and perform other batch operations on subtitles. [kl/sub-batch]

将字幕与视频匹配并重命名,并对字幕执行其他批量操作。 [kl/sub-batch]

install

# Cargo
cargo install --force sub-batch

command

# Rename
sub-batch rename --subarea ".+"

# Adjust subtitle timings with alass
sub-batch alass

# Adjust subtitle timings interactively with mpv
sub-batch time-mpv

annex

sublime snnippets batch convert to vscode snippets

install

# Npm
pnpm add -g sublime-snippets-to-vscode

usage

sublimeSnippetsToVsCode -s /home/<user>/.config/sublime-text/Packages/User/Snippets -o /home/<user>/.config/nvim/snippets

subliminal

install

# Pip
uv tool install subliminal

SubPlease-ZH

install

git clone --depth=1 https://github.com/BorisNA/SubPlease-ZH
cd SubPlease-ZH
pyenv install 3.9.9
pyenv shell 3.9.9
pip install -r requirements.txt

usage

  1. Create folder liked your_book/.
  2. Put your_book.m4b, your_book.epub into your_book/.
  3. Check here to get the supported file format.
python run.py -d your_book
python gen.py -d your_book

SubPlz

install

# ArchWSL
git clone --depth=1 https://github.com/kanjieater/SubPlz
cd SubPlz
uv venv --python=3.11
source .venv/bin/activate
uv pip install .

usage

subplz sync -h

SVGO

install

# Arch
sudo pacman -S svgo
# Npm
pnpm add -g svgo

syncabook

s# syncabook

syncabook is a set of tools for creating ebooks with synchronized text and audio (a.k.a. read along, read aloud; like Amazon’s Whispersync). You start with a list of text files (plaintext or XTML) and a list of audio files (.wav or .mp3) and get an ebook in the open EPUB3 with Media Overlays format.
The synchronization is done automatically using the afaligner library. It is a forced aligner that works by synthesizing text and then aligning synthesized and recorded audio using a variation of the DTW (Dynamic Time Warping) algorithm. [r4victor/syncabook]

syncabook是一套用于创建带有同步文本和音频的电子书的工具(也称为“跟读”、“朗读”;类似于亚马逊的Whispersync)。你可以从一系列文本文件(纯文本或XTML)和一系列音频文件(.wav或.mp3)开始,最终得到一个采用开放EPUB3带媒体叠加格式的电子书。
同步是通过使用afaligner库自动完成的。它是一个强制对齐器,通过合成文本并使用DTW(动态时间规整)算法的一种变体对合成音频和录制音频进行对齐。 [r4victor/syncabook]

install

git clone --depth=1 https://github.com/r4victor/syncabook
cd syncabook
# Or
mkdir syncabook
cd syncabook
git clone --depth=1 https://github.com/scillidan/syncabook
git clone --depth=1 https://github.com/scillidan/afaligner
vim Dockerfile
FROM python:3.9-slim

RUN apt update -q \
	&& apt install --no-install-recommends -yq espeak \
	libespeak-dev \
	ffmpeg \
	&& apt install -yq gcc

RUN pip install --upgrade pip
RUN pip install numpy==1.23.4
RUN pip install pytest==7.1.3

WORKDIR /syncabook

COPY afaligner ./afaligner
COPY syncabook ./syncabook

RUN pip install -e afaligner
RUN pip install -r syncabook/requirements/base.txt
RUN pip install -e syncabook

WORKDIR /
ENTRYPOINT ["syncabook"]
sudo docker build -t <user>/syncabook -f Dockerfile .
sudo docker run --rm -it <user>/syncabook:latest -h

Windows 10

  1. Get aeneas-win64-setup-*.exe from Releases - sillsdev/aeneas-installer.
  2. set "AENEAS_FORCE_CEW=True"

usage

cd books
mkdir alice_in_wonderland
cd alice_in_wonderland
mkdir plaintext
  1. For example, download “Alice in Wonderland, Retold in Words of One Syllable” by Carroll and Gorham, the Plain Text UTF-8 format from Project Gutenberg, rename to text.txt.
  2. Download the corresponding book’s vocal reading audio files from LibriVox, rename to audio.zip, then decompress to audio/.
  3. In plaintext/, create a 001_title.txt.
  4. Open text.txt, cut all content that above chapter strings liked CHAPTER I, ACT I into 001_title.txt.
# syncabook download_files <url> <book>
syncabook split_text --mode opening --p <book_index> <book>\text.txt <book>\plaintext
# syncabook split_text --mode delimeter --p <book_index> <book>\text.txt <book>\plaintext
# syncabook split_text --mode equal --n 2 <book>\text.txt <book>\plaintext
syncabook to_xhtml <book>/plaintext <book>/sync_text
syncabook sync <book>
syncabook create <book>

For example:

sudo docker run --rm -v ~/Git/_/synclibrivox/books:/books -it scillidan/syncabook:latest split_text --mode opening --p CHAPTER books/alice_in_wonderland/text.txt books/alice_in_wonderland/plaintext
sudo docker run --rm -v ~/Git/_/synclibrivox/books:/books -it scillidan/syncabook:latest to_xhtml books/alice_in_wonderland/plaintext books/alice_in_wonderland/sync_text
sudo docker run --rm -v ~/Git/_/synclibrivox/books:/books -it scillidan/syncabook:latest sync books/alice_in_wonderland
sudo docker run --rm -v ~/Git/_/synclibrivox/books:/books -it scillidan/syncabook:latest create books/alice_in_wonderland

reference

annex


    Tabby

    usage

    1 2

    tabby.exe serve --model StarCoder-1B --chat-model Qwen2-1.5B-Instruct
    tabby.exe serve --model Qwen2.5-Coder-7B --chat-model CodeQwen-7B-Chat --device cuda
    
    1. Visit http://localhost:8080 and login.
    2. User → Token → `<copy_from>``.
    3. Vscodium → Plugins → Search → Tabby → Install.
    4. Tabby → Connect to Server → http://localhost:8080<paste_to>.

    1. Step 1 - Installation - Windows

    2. Models Registry

    Television

    install

    # Arch
    sudo pacman -S television
    # Windows 10
    scoop install television
    # Cargo
    cargo install --force television
    

    usage

    tv
    

    termusic

    # Arch
    sudo pacman -S termusic
    # Windows
    scoop install termusic
    

    terser

    install

    # Arch
    yay -S --noconfirm terser
    # Npm
    pnpm add -g terser
    

    tesseract

    install

    # Arch
    sudo pacman -S tesseract tesseract-data-eng tesseract-data-chi_sim tesseract-data-chi_sim_vert
    # Windows 10
    scoop install tesseract
    

    tex-fmt

    install

    # Arch
    yay -S --noconfirm tex-fmt
    # Windows 10
    scoop install tex-fmt
    

    Texlab

    install

    # Arch
    sudo pacman -S texlab
    # Windows 10
    scoop install texlab
    

    thes

    install

    # Cargo
    cargo install --force thes
    

    timidity++

    install

    # Arch
    sudo pacman -S timidity++
    

    command

    # Convert MIDI file to MP3
    timidity "$1" -Ow -o - | ffmpeg -i - -acodec libmp3lame -ab 64k "_mid2.mp3"
    

    resource

    cache

    tldr

    install

    # Arch
    sudo pacman tldr
    # Windows 10
    scoop install tldr
    

    usage

    tldr -c
    tldr -u
    

    resource

    cache

    To CBZ

    install

    git clone --depth=1 https://github.com/italomaia/to-cbz
    cd to-cbz
    

    usage

    python <path_to>/to-cbz/to_cbz.py <dir>
    

    trashy

    install

    # Arch
    yay -S --noconfirm trashy
    # Cargo
    cargo install --force trashy
    

    ttf2woff2

    install

    # Node.js
    pnpm add -g ttf2woff2
    

    TTS

    1

    install

    git clone --depth=1 https://github.com/coqui-ai/TTS
    uv venv
    .venv\Scripts\activate.bat
    uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
    uv pip install -e .
    

    usage

    tts --list_models
    tts --model_name "tts_models/multilingual/multi-dataset/xtts_v2" --list_speaker_idxs
    tts --model_name "tts_models/multilingual/multi-dataset/xtts_v2" --list_language_idxs
    
    tts --device cuda --model_name "tts_models/multilingual/multi-dataset/xtts_v2" --speaker_idx "Claribel Dervla" --language_idx "en" --text "<text>" --out_path temp.wav
    

    Sample files


    1. How can I run Mozilla TTS/Coqui TTS training with CUDA on a Windows system?

    Tidy Viewer (tv)

    Tidy Viewer (tv) is a cross-platform data pretty printer that uses column styling to maximize viewer enjoyment. Supports CSV, TSV, PSV, and Parquet files with streaming for large datasets. [alexhallam/tv]

    Tidy Viewer(tv)是一个跨平台的数据美化打印工具,使用列样式来最大化观众的视觉体验。支持CSV、TSV、PSV和Parquet文件,并具备大数据集的流式处理功能。 [alexhallam/tv]

    install

    # Arch
    yay -S --noconfirm tidy-viewer
    # Cargo
    cargo install --force tidy-viewer
    

    command

    # Fetch color data from various markdown sources, convert to CSV, and display with coloring tools
    curl -k --remote-name-all -o - https://raw.githubusercontent.com/scillidan/color/main/data/{chinese-traditional-colors.md,china-tradition-color-monokuro.md,zhongguose.md,china-tradition-color-320.md,nipponcolors.md} | mdtable2csv | xsv select hex,spelling,name | tidy-viewer -D -a -e | coloro | less -R
    

    UglifyJS 3

    install

    # Npm
    pnpm add -g uglify-js
    

    ugrep

    install

    # Arch
    sudo pacman -S ugrep
    # Windows 10
    scoop install ugrep
    

    vcsi

    install

    # Arch
    yay -S --noconfirm vcsi
    # uv
    uv tool install vcsi
    

    usage

    vcsi -w 1920 --metadata-position hidden "$1"
    

    annex

    vcsi

    vercel

    install

    # Node.js
    pnpm add -g vercel
    

    video-to-ascii

    usage

    video-to-ascii -f "$1" --strategy ascii-color
    

    Vidmerger

    install

    git clone --depth=1 https://github.com/tgotwig/vidmerger
    cd vidmerger
    cargo build --release
    

    usage

    vidmerger -f <format> .
    

    vimg

    install

    # Arch
    yay -S --noconfirm vimg
    # Cargo
    cargo install --force vimg
    

    usage

    vimg vcs -c4 -n16 -H270 --avif-fps=20 "$1"
    

    vtracer

    vtt_to_srt3

    install

    # Pip
    uv tool install vtt_to_srt3
    

    usage

    vtt_to_srt "$1"
    

    Wappalyzer Next

    install

    # Pip
    uv tool install wappalyzer
    

    Warcraft Font Merger

    usage

    1. Get WarFontMerger-SC-*-windows-x64.7z from Warcraft-Font-Merger - Releases.
    2. Decompress and rename it to Warcraft-Font-Merger/.
    3. Create fonts/.
    4. Copy fonts into fonts/.
    5. Run 合并补全.bat fonts/<font1> fonts/<font2>.
    6. Rename out.ttf.

    Whishper

    install

    git clone --depth=1 https://github.com/openai/whisper
    cd whisper
    uv venv
    .venv\Scripts\activate.bat
    uv pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu121
    uv pip install -e .
    

    usage

    whisper --model large-v3 --device cuda --language Chinese --output_format srt <input>
    

    xan

    xan is a command line tool that can be used to process CSV files directly from the shell.
    It has been written in Rust to be as fast as possible, use as little memory as possible, and can very easily handle large CSV files (Gigabytes). It leverages a novel SIMD CSV parser and is also able to parallelize some computations (through multithreading) to make some tasks complete as fast as your computer can allow.
    It can easily preview, filter, slice, aggregate, sort, join CSV files, and exposes a large collection of composable commands that can be chained together to perform a wide variety of typical tasks.
    xan also offers its own expression language so you can perform complex tasks that cannot be done by relying on the simplest commands. This minimalistic language has been tailored for CSV data and is way faster than evaluating typical dynamically-typed languages such as Python, Lua, JavaScript etc.
    Note that this tool is originally a fork of BurntSushi’s xsv, but has been nearly entirely rewritten at that point, to fit SciencesPo’s médialab use-cases, rooted in web data collection and analysis geared towards social sciences (you might think CSV is outdated by now, but read our love letter to the format before judging too quickly).
    xan therefore goes beyond typical data manipulation and expose utilities related to lexicometry, graph theory and even scraping.
    Beyond CSV data, xan is able to process a large variety of CSV-adjacent data formats from many different disciplines such as web archival (.cdx) or bioinformatics (.vcf, .gtf, .sam, .bed etc.). xan is also able to convert to & from many data formats such as json, excel files, numpy arrays etc. using xan to and xan from. See this section for more detail.
    Finally, xan can be used to display CSV files in the terminal, for easy exploration, and can even be used to draw basic data visualisations. [medialab/xan]

    xan是一个命令行工具,可以直接从shell处理CSV文件。
    它是用Rust编写的,旨在尽可能快速,占用最少内存,并能轻松处理大型CSV文件(达到千兆字节级别)。它利用了一种新颖的SIMD CSV解析器,并能够通过多线程并行化一些计算,使某些任务能以计算机能够允许的最快速度完成。
    xan能够轻松预览、筛选、切片、聚合、排序、连接CSV文件,并提供了一大堆可组合的命令,这些命令可以链式组合以执行各种典型任务。
    xan还提供了自己的表达式语言,使您能够执行一些无法仅依靠最简单命令完成的复杂任务。这种极简的语言专为CSV数据而设计,其速度远快于评估典型的动态类型语言(如Python、Lua、JavaScript等)。
    请注意,这个工具最初是BurntSushi的xsv的一个分支,但在那时几乎完全重写,以适应巴黎政治学院(SciencesPo)médialab的使用案例,根植于针对社会科学的网络数据收集和分析(您可能认为CSV现在已经过时,但请在过快判断之前,阅读我们对这种格式的情书)。
    因此,xan超越了典型的数据操作,提供与词汇计量学、图论甚至抓取相关的实用工具。
    除了CSV数据外,xan还能够处理许多来自不同学科的CSV相邻数据格式,例如Web归档(.cdx)或生物信息学(.vcf、.gtf、.sam、.bed等)。xan还能够通过xan to和xan from在许多数据格式之间进行转换,如JSON、Excel文件、NumPy数组等。有关更多详细信息,请参见这一部分。
    最后,xan可以用于在终端中显示CSV文件,以便于探索,甚至可以用于绘制基本的数据可视化图表。 [medialab/xan]

    install

    # Arch
    sudo pacman -S xan
    # Windows 10
    scoop install xan
    

    help

    # 探索与可视化
    - [count (c)](https://github.com/medialab/xan/blob/master/docs/cmd/count.md): 统计文件中的行数
    - [headers (h)](https://github.com/medialab/xan/blob/master/docs/cmd/headers.md): 显示头部名称
    - [view (v)](https://github.com/medialab/xan/blob/master/docs/cmd/view.md): 以人类友好的方式预览 CSV 文件
    - [flatten](https://github.com/medialab/xan/blob/master/docs/cmd/flatten.md): 显示文件每一行的扁平化版本
    - [hist](https://github.com/medialab/xan/blob/master/docs/cmd/hist.md): 打印以 CSV 文件行作为柱状图的直方图
    - [plot](https://github.com/medialab/xan/blob/master/docs/cmd/plot.md): 绘制散点图或折线图
    - [heatmap](https://github.com/medialab/xan/blob/master/docs/cmd/heatmap.md): 绘制 CSV 矩阵的热图
    - [progress](https://github.com/medialab/xan/blob/master/docs/cmd/progress.md): 在读取 CSV 数据时显示进度条
    
    # 搜索与过滤
    - [search](https://github.com/medialab/xan/blob/master/docs/cmd/search.md): 在 CSV 数据中搜索(或替换)模式
    - [filter](https://github.com/medialab/xan/blob/master/docs/cmd/filter.md): 基于评估表达式只保留一些 CSV 行
    - [head](https://github.com/medialab/xan/blob/master/docs/cmd/head.md): CSV 文件的前几行
    - [tail](https://github.com/medialab/xan/blob/master/docs/cmd/tail.md): CSV 文件的最后几行
    - [slice](https://github.com/medialab/xan/blob/master/docs/cmd/slice.md): 切片 CSV 文件的行
    - [top](https://github.com/medialab/xan/blob/master/docs/cmd/top.md): 根据某一列查找 CSV 文件的顶部行
    - [sample](https://github.com/medialab/xan/blob/master/docs/cmd/sample.md): 随机抽样 CSV 数据
    
    # 排序与去重
    - [sort](https://github.com/medialab/xan/blob/master/docs/cmd/sort.md): 排序 CSV 数据
    - [dedup](https://github.com/medialab/xan/blob/master/docs/cmd/dedup.md): 去重 CSV 文件
    - [shuffle](https://github.com/medialab/xan/blob/master/docs/cmd/shuffle.md): 随机打乱 CSV 数据
    
    # 聚合
    - [frequency (freq)](https://github.com/medialab/xan/blob/master/docs/cmd/frequency.md): 显示频率表
    - [groupby](https://github.com/medialab/xan/blob/master/docs/cmd/groupby.md): 按 CSV 文件的组聚合数据
    - [stats](https://github.com/medialab/xan/blob/master/docs/cmd/stats.md): 计算基本统计信息
    - [agg](https://github.com/medialab/xan/blob/master/docs/cmd/agg.md): 聚合 CSV 文件中的数据
    - [bins](https://github.com/medialab/xan/blob/master/docs/cmd/bins.md): 将数值列划分为多个区间
    - [window](https://github.com/medialab/xan/blob/master/docs/cmd/window.md): 计算窗口聚合(累加和、滚动均值、滞后等)
    
    # 合并多个 CSV 文件
    - [cat](https://github.com/medialab/xan/blob/master/docs/cmd/cat.md): 按行或列连接
    - [join](https://github.com/medialab/xan/blob/master/docs/cmd/join.md): 合并 CSV 文件
    - [fuzzy-join](https://github.com/medialab/xan/blob/master/docs/cmd/fuzzy-join.md): 用含有模式(例如正则表达式)的另一个 CSV 文件合并
    - [merge](https://github.com/medialab/xan/blob/master/docs/cmd/merge.md): 合并多个相似的已排序 CSV 文件
    
    # 添加、转换、删除及移动列
    - [select](https://github.com/medialab/xan/blob/master/docs/cmd/select.md): 从 CSV 文件中选择列
    - [drop](https://github.com/medialab/xan/blob/master/docs/cmd/drop.md): 从 CSV 文件中删除列
    - [map](https://github.com/medialab/xan/blob/master/docs/cmd/map.md): 通过评估每个 CSV 行的表达式创建新列
    - [transform](https://github.com/medialab/xan/blob/master/docs/cmd/transform.md): 通过评估每个 CSV 行的表达式转换列
    - [enum](https://github.com/medialab/xan/blob/master/docs/cmd/enum.md): 通过在前面添加索引列来枚举 CSV 文件
    - [flatmap](https://github.com/medialab/xan/blob/master/docs/cmd/flatmap.md): 每个 CSV 行评估的表达式返回的每个值生成一行
    - [fill](https://github.com/medialab/xan/blob/master/docs/cmd/fill.md): 填充空单元格
    - [blank](https://github.com/medialab/xan/blob/master/docs/cmd/blank.md): 将连续相同的单元格值变为空白
    
    # 格式化、转换与重组
    - [behead](https://github.com/medialab/xan/blob/master/docs/cmd/behead.md): 从 CSV 文件中删除头部
    - [rename](https://github.com/medialab/xan/blob/master/docs/cmd/rename.md): 重命名 CSV 文件的列
    - [input](https://github.com/medialab/xan/blob/master/docs/cmd/input.md): 读取格式异常的 CSV 数据
    - [fixlengths](https://github.com/medialab/xan/blob/master/docs/cmd/fixlengths.md): 使所有行具有相同长度
    - [fmt](https://github.com/medialab/xan/blob/master/docs/cmd/fmt.md): 格式化 CSV 输出(改变字段分隔符)
    - [explode](https://github.com/medialab/xan/blob/master/docs/cmd/explode.md): 基于某列分隔符爆炸行
    - [implode](https://github.com/medialab/xan/blob/master/docs/cmd/implode.md): 根据分歧列合并连续相同的行
    - [from](https://github.com/medialab/xan/blob/master/docs/cmd/from.md): 将多种格式转换为 CSV
    - [to](https://github.com/medialab/xan/blob/master/docs/cmd/to.md): 将 CSV 文件转换为多种数据格式
    - [scrape](https://github.com/medialab/xan/blob/master/docs/cmd/scrape.md): 将 HTML 抓取为 CSV 数据
    - [reverse](https://github.com/medialab/xan/blob/master/docs/cmd/reverse.md): 反转 CSV 数据的行
    - [transpose (t)](https://github.com/medialab/xan/blob/master/docs/cmd/transpose.md): 转置 CSV 文件
    
    # 将 CSV 文件拆分为多个部分
    - [split](https://github.com/medialab/xan/blob/master/docs/cmd/split.md): 将 CSV 数据拆分为块
    - [partition](https://github.com/medialab/xan/blob/master/docs/cmd/partition.md): 根据列值对 CSV 数据进行分组
    
    # 并行化
    - [parallel (p)](https://github.com/medialab/xan/blob/master/docs/cmd/parallel.md): 类似于 Map-Reduce 的并行计算
    
    # 生成 CSV 文件
    - [range](https://github.com/medialab/xan/blob/master/docs/cmd/range.md): 从数值范围创建 CSV 文件
    
    # 执行副作用
    - [eval](https://github.com/medialab/xan/blob/master/docs/cmd/eval.md): 评估/调试单个表达式
    - [foreach](https://github.com/medialab/xan/blob/master/docs/cmd/foreach.md): 循环遍历 CSV 文件以执行副作用
    
    # 词法计量与模糊匹配
    - [tokenize](https://github.com/medialab/xan/blob/master/docs/cmd/tokenize.md): 对文本列进行分词
    - [vocab](https://github.com/medialab/xan/blob/master/docs/cmd/vocab.md): 基于标记化文档构建词汇
    - [cluster](https://github.com/medialab/xan/blob/master/docs/cmd/cluster.md): 聚类 CSV 数据以查找近似重复项
    
    # 矩阵与网络相关命令
    - [matrix](https://github.com/medialab/xan/blob/master/docs/cmd/matrix.md): 将 CSV 数据转换为矩阵数据
    - [network](https://github.com/medialab/xan/blob/master/docs/cmd/network.md): 将 CSV 数据转换为网络数据
    

    xargs

    A program called xargs can be used to execute a program multiple times. It reads the standard input and converts it into arguments for another program. [Petr Stříbný, “Command Line Handbook”]

    一个名为xargs的程序可以用于多次执行一个程序。它读取标准输入并将其转换为另一个程序的参数。[Petr Stříbný, “Command Line Handbook”]

    reference

    -#document xargs(1) - Linux manual page

    xsv

    install

    # Cargo
    cargo install --force xsv
    

    xsv

    yoga

    install

    pipx install yoga
    

    usage

    yoga image --resize 1920 "$1" _yoga.png
    

    yq

    install

    # Arch
    sudo pacman -S yq
    # Windows 10
    scoop install yq
    

    yt-dlp

    yt-dlp is a feature-rich command-line audio/video downloader with support for thousands of sites. [yt-dlp/yt-dlp]

    yt-dlp是一个功能丰富的命令行音频/视频下载器,支持数千个网站。 [yt-dlp/yt-dlp]

    install

    # Arch
    sudo pacman -S yt-dlp
    # Windows 10
    scoop install yt-dlp
    

    Personal do

    1

    1. Get yt-dlp-ChromeCookieUnlock.zip from release.
    2. Decompress it to yt-dlp-ChromeCookieUnlock/.
    3. (Windows 10) Move yt-dlp-ChromeCookieUnlock\ into C:\Users\User\AppData\Roaming\yt-dlg\plugins\.

    command

    # List available formats for a given URL
    yt-dlp -F "<url_1>"
    
    # Download specific video and audio formats using their IDs
    yt-dlp -f "<video_id>+<audio_id>" "<url_1>"
    
    # Download the best video and audio available
    yt-dlp -f bestvideo+bestaudio "<url_1>"
    
    # Download MP3 using yt-dlp
    yt-dlp -x --audio-format mp3 --audio-quality 320k -o "%(title)s.%(ext)s" "<url_1>"
    

    annex


    1. Installing Plugins

    ZonyLrcToolsX

    install

    # Arch
    yay -S --noconfirm zonylrctools-bin
    

    usage

    zonylrctools download -d "$1" -l -n 2
    

    zoxide

    install

    # Arch
    sudo pacman -S zoxide
    # Windows 10
    scoop install zoxide
    

    bin_arch

    cross-reference

    mark

    later

    extra

    cache

    resource

    later

    cache

    asciinema

    install

    sudo pacman -S asciinema
    

    reference

    resource

    mark

    cache

    asdf

    install

    yay -S --noconfirm asdf-vm
    

    usage

    asdf plugin add ruby https://github.com/asdf-vm/asdf-ruby
    asdf install ruby 2.7.2
    asdf set -u ruby 2.7.2
    

    reference

    Atuin

    install

    sudo pacman -S atuin
    

    reference

    troubleshoot

    bombadillo

    cmus

    install

    sudo pacman -S cmus
    

    usage

    cmus
    
    # cmus
    :a <music_dir>
    

    reference

    firewalld

    install

    sudo pacman -S firewalld
    

    usage

    sudo systemctl enable --now firewalld
    
    # Optional
    sudo firewall-cmd --get-default-zone
    sudo firewall-cmd --list-all-zones
    sudo firewall-cmd --zone=home --list-all
    
    ip a
    sudo firewall-cmd --zone=home --change-interface={<wired_interface>,<wireless_interface>}
    sudo firewall-cmd --get-services
    sudo firewall-cmd --permanent --zone=home --add-service={ftp,samba,samba-dc,vnc-server}
    # docker ps
    # sudo firewall-cmd --zone=home --add-port=<docker_port>/tcp --permanent
    sudo firewall-cmd --set-default-zone=home
    sudo firewall-cmd --reload
    sudo firewall-cmd --zone=home --list-all
    
    sudo firewall-cmd --zone=work --list-all
    sudo firewall-cmd --zone=work --change-interface=<wired_interface>
    sudo firewall-cmd --permanent --zone=work --add-service=vnc-server
    sudo firewall-cmd --reload
    sudo firewall-cmd --set-default-zone=work
    sudo firewall-cmd --zone=work --list-all
    

    reference

    Flatpak

    install

    Arch

    1 2

    sudo pacman -S flatpak
    sudo reboot
    
    flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    

    Ubuntu 24

    3 4

    sudo add-apt-repository ppa:flatpak/stable
    sudo apt update
    sudo apt install flatpak
    sudo apt install gnome-software-plugin-flatpak
    flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
    reboot
    
    export GIO_MODULE_DIR=/usr/lib/x86_64-linux-gnu/gio/modules/
    flatpak install flathub
    

    command

    flatpak install flathub <application_id>
    flatpak uninstall <application_id>
    flatpak list --app
    

    Personal do

    flatpak install flathub com.qq.QQ
    # flatpak install flathub com.wps.Office
    flatpak install flathub com.baidu.NetDisk
    

    1. [Bug]: “SSL peer certificate or SSH remote key was not OK” during extra-data download, only on Ubuntu-based distros

    2. Discover Flatpak update error message: Aborted due to failure (Flatpak system operation Deploy not allowed for user)

    3. Ubuntu Quick Setup - Flatpak

    4. TLS support is not available - flatpak/flatpak

    FTP

    install

    1

    # Ubuntu 22 ARM
    sudo apt install vsftpd
    

    config

    sudo vim /etc/vsftpd.conf
    
    utf8_filesystem=YES
    

    usage

    sudo systemctl enable --now vsftpd
    

    1. Setting Up a Basic FTP Server on Ubuntu 22

    gradient-figlet

    annex

    gradient-figlet

    Jackett Search Cli

    install

    Termux

    Jackett → API Key → <copy_from>.

    pkg install jq fzf
    git clone --depth=1 https://github.com/rodrigo-sys/jsc
    cd jsc
    chmod +x jsc
    vim jsc
    
    api_key='<paste_to>'
    

    usage

    jsc -t <tracker> -s "<to_search>"
    jsc -t <tracker> -s "<to_search>" | xargs -n 1 -r aria2
    

    cross-reference

    mark

    keyd

    install

    sudo pacman -S keyd
    

    usage

    sudo systemctl enable keyd --now
    sudo vim /etc/keyd/default.conf
    # Copy from https://github.com/rvaiya/keyd?tab=readme-ov-file#recommended-config
    
    [ids]
    
    *
    
    [main]
    
    # shift = oneshot(shift)
    # meta = oneshot(meta)
    # control = oneshot(control)
    # leftalt = oneshot(alt)
    # rightalt = oneshot(altgr)
    capslock = overload(control, esc)
    insert = S-insert
    
    sudo keyd reload
    

    menyoki

    install

    sudo pacman -S menyoki
    

    command

    # Record 30 frames per second and encode as APNG
    menyoki record apng --fps 30
    

    Mount

    Arch

    (Un)mount in Thunar

    [^1]

    # sudo pacman -S gvfs-smb
    logout
    # Re-login
    

    Mount NTFS disk

    sudo pacman -S ntfs-3g
    sudo mkdir /mnt/<mount_name>
    # Be careful not to format the other drive.
    lsblk
    sudo mount -t ntfs-3g /dev/<disk_partition> /mnt/<mount_name>
    sudo blkid
    sudo mount -t ntfs-3g UUID=<disk_partition_uuid> /mnt/<mount_name>
    

    Mount NTFS disk on boot

    # Get the uid
    id -u $USER
    sudo cp /etc/fstab /etc/fstab.bak
    sudo vim /etc/fstab
    
    UUID=<disk_uuid> /mnt/<mount_name> ntfs-3g default,uid=<uid> 0 0
    

    Mount Samba Share

    sudo pacman -S cifs-utils
    sudo mkdir /mnt/<mount_name>
    sudo mount -t cifs //<your_host>/<share_name> /mnt/<mount_name> -o username=<smb_user>,password=<smb_passwd>
    

    Mount Samba Share after boot

    vim <path_to>/smb_credentials
    
    username=<smbuser>
    password=<smbuser_passwd>
    
    chmod 600 <path_to>/smb_credentials
    
    vim ~/mount.sh
    
    !/bin/bash
    bin/mount -t cifs //<your_host>/<share_name> /mnt/<mount_name> -o uid=1000,gid=1000,credentials=<path_to>/smb_credentials,file_mode=0664,dir_mode=0775
    
    chmod +x ~/mount.sh
    sudo vim ~/.config/systemd/system/mount.service
    
    [Unit]
    Description=Mount
    After=network.target
    
    [Service]
    Type=oneshot
    ExecStart=/home/<user>/mount.sh
    ExecStop=/bin/umount /mnt/<mount_name>
    RemainAfterExit=yes
    
    [Install]
    WantedBy=default.target
    
    # sudo systemctl enable --now mount-smb.service
    sudo systemctl daemon-reload
    sudo mount -a
    sudo systemctl enable mount.service
    

    reference

    Mutt

    install

    sudo pacman -S mutt
    

    reference

    NeoMutt

    install

    sudo pacman -S neomutt
    

    NetworkManager

    install

    sudo pacman -S networkmanager
    

    usage

    # sudo systemctl stop netctl
    # sudo systemctl disable netctl
    sudo systemctl enable --now networkmanager
    

    optional

    # Enable system tray
    sudo pacman -S network-manager-applet
    

      Newsboat

      install

      sudo pacman -S newsboat
      

      config

      1

      mkdir ~/.config/newsboat
      vim ~/.config/newsboat/config
      
      include /usr/share/doc/newsboat/contrib/colorschemes/plain
      
      vim ~/.config/newsboat/urls
      
      https://hnrss.org/newest
      

      usage

      newsboat -i <your>.opml
      newsboat
      

      reference

      resource

      cache


      1. ArchWiki - Newsboat

      Open Codex CLI

      install

      git clone --depth=1 https://github.com/codingmoh/open-codex
      cd open-codex
      uv venv --python=3.11
      .venv\Scripts\activate.bat
      uv pip install .
      

      usage

      open-codex "untar file abc.tar"
      

      Open Codex CLI

      install

      pnpm i -g open-codex
      

      usage

      git clone --depth=1 https://github.com/openai/openai-fm
      cd openai-fm
      open-codex --provider ollama --model qwen2.5-coder:7b
      open-codex --provider ollama --full-context --model qwen2.5-coder:7b
      

      OpenSSh

      install

      1

      sudo pacman -S openssh
      

      usage

      sudo systemctl enable --now sshd
      # sudo ufw allow 22/tcp
      # ip addr show
      

      Enable Pubkey Authentication

      sudo vim /etc/ssh/sshd_config
      
      PubkeyAuthentication yes
      # AuthorizedKeysFile ...
      PasswordAuthentication no
      
      sudo systemctl restart sshd
      
      ssh-keygen -t rsa -b 2048 -f ~/.ssh/id_rsa
      # Copy from ~/.ssh/id_rsa.pub
      

      Client PC:

      mkdir ~/.ssh
      vim ~/.ssh/authorized_keys
      vim ~/.ssh/authorized_keys2
      # Paste into
      chmod 700 ~/.ssh
      chmod 600 ~/.ssh/authorized_keys*
      

      1. enable SSH on Arch Linux

      Pacman

      install

      [^1] [^2]

      sudo cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
      sudo vim /etc/pacman.d/mirrorlist
      
      Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
      
      sudo vim /etc/pacman.conf
      
      [archlinuxcn]
      Server = https://repo.archlinuxcn.org/$arch
      
      # Default
      # sudo pacman -Sy archlinux-keyring
      # sudo pacman-key --init
      # sudo pacman-key --populate archlinux
      # Enable archlinuxcn
      sudo pacman -Sy archlinuxcn-keyring
      sudo pacman-key --init
      sudo pacman-key --populate
      

      usage

      [^3]

      # Refreshes the package database and upgrades all installed packages.
      # export http_proxy=your_proxy:<port>
      # export https_proxy=your_proxy:<port>
      pacman -Syyu
      # unset http_proxy
      # unset https_proxy
      
      # Additional tools for pacman.
      sudo pacman -S pacman-contrib
      
      # Removes older versions of packages from the cache, keeping only the two most recent versions for each one.
      sudo paccache -rk 2
      
      # removes all orphaned packages plus their unused dependencies and their configuration files, cleaning up your system from packages that are no longer required.
      sudo pacman -Rns $(pacman -Qdtq)
      

      resource

      mark

      cache

      [^1] USTC Mirror Help - Arch Linux [^2] Arch Linux 中文社区仓库 [^3] 10 Things You MUST DO After Installing Arch Linux (2023)

      pass

      install

      sudo pacman -S pass
      
      pass init <your_email>
      pass insert <key_name>
      pass show <key_name>
      

      cross-reference

      mark

      Plandex

      install

      1 2

      # ArchWSL
      git clone --depth=1 https://github.com/plandex-ai/plandex
      cd plandex/app
      sudo ./start_local.sh
      
      # In a new terminal session
      curl -sL https://plandex.ai/install.sh | bash
      

      usage

      cd <repo>
      plandex
      

      1. Self-Hosting

      2. Install Plandex

      Ranger

      install

      sudo pacman -S ranger
      

      resource

      cache

      sdcv

      install

      sudo pacman -S sdcv
      

      config

      vim <stardict>.ifo
      
      bookname=<english_name>
      

      usage

      sdcv <word>
      

      reference

      resource

      cache

      asset

      sddm

      install

      sudo pacman -S sddm
      

      usage

      sudo systemctl enable --now sddm
      

      Terminus Font

      install

      1 2

      # Ubuntu 22 ARM
      showconsolefont
      ls /user/share/kbd/showconsolefont
      sudo pacman -S terminus-font
      setfont drdos8x14 -m 8859-2
      

      1. How to Change Linux Console Fonts on Arch Linux

      2. Linux console - Fonts

      TeX Live

      install

      1 2

      # Arch
      yay -S --noconfirm texlive-installer
      # Termux
      pkg install texlive-installer
      
      # Arch
      sudo /opt/texlive-installer/install-tl
      sudo /usr/local/texlive/2024/bin/x86_64-linux/tlmgr option repository https://mirrors.cernet.edu.cn/CTAN/systems/texlive/tlnet
      tlmgr update --list
      sudo /usr/local/texlive/2024/bin/x86_64-linux/tlmgr update --all
      
      # Termux
      termux-install-tl
      

      command

      tlmgr search --global <pkg>
      

      Upgrade from 2024 to 2025

      sudo cp -a /usr/local/texlive/2024 /usr/local/texlive/2025
      cd /usr/local/texlive/2025
      sudo wget https://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh
      sudo PATH=$PATH ./update-tlmgr-latest.sh -- --upgrade texlive/2025
      sudo /usr/local/texlive/2025/bin/x86_64-linux/tlmgr option repository https://mirrors.cernet.edu.cn/CTAN/systems/texlive/tlnet
      sudo /usr/local/texlive/2025/bin/x86_64-linux/tlmgr update --self --all
      luaotfload-tool -fu
      

      command

      pdflatex --shell-escape "$1"
      

      cross-reference

      mark


      1. TeX Live

      2. tlmgr

      Translate Shell

      install

      sudo pacman -S translate-shell
      

      config

      mkdir ~/.config/translate-shell
      vim ~/.config/translate-shell/init.trans
      
      {
      	:translate-shell "0.9.0"
      	:verbose         false
      	:show-original   false
      	:hl              "en"
      	:tl              ["zh"]
      	:engine          "bing"
      }
      

      ufw

      install

      sudo pacman -S ufw
      

      usage

      sudo systemctl enable --now ufw
      sudo ufw status
      

      reference

      yay

      install

      # Enable [archlinuxcn]. Refer to https://www.archlinuxcn.org/archlinux-cn-repo-and-mirror
      sudo pacman -Syu yay
      

      From source

      git clone https://aur.archlinux.org/yay.git
      cd yay
      makepkg
      sudo pacman -U yay-bin*.pkg.tar.xz
      yay
      

      z

      resource

      cache

      zeal-lynx-cli

      install

      git clone --depth=1 https://github.com/Sanix-Darker/zeal-lynx-cli
      uv venv
      .venv\Scripts\activate.bat
      uv pip install argparse xdg==5.1.1 pathlib bs4
      

      usage

      # Put docset files into C:\Users\User\Scoop\apps\zeal\current\docsets\Vim.docset\Contents\Resources\Documents
      python zeal-cli --zeal-prefix C:\Users\User\Scoop\apps\zeal\current vim arabic
      

      tmux

      install

      sudo pacman -S tmux
      

      Personal do

      git clone --depth=1 https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
      git clone --depth=1 https://github.com/jimeh/tmuxifier ~/.tmuxifier
      chmod +x ~/.tmuxifier/bin/tmuxifier
      ~/.tmux/plugins/tpm/bin/install_plugins
      

      command

      # Save session
      tmux detach
      # Restore session
      tmux attach
      

      reference

      cross-reference

      mark

      cache

      troubleshoot

      resource

      mark

      cache

      cancel

      annex

      color_vanta

      tmux-thumbs

      Personal do

      # Cargo
      cargo install --force thumbs
      

      Tmuxifier

      install

      git clone --depth=1 https://github.com/jimeh/tmuxifier ~/.tmuxifier
      

      config

      # .zshrc
      export PATH="$HOME/.tmuxifier/bin:$PATH"
      export TMUXIFIER_LAYOUT_PATH="$HOME/Usr/Git/Shell/_arch/tmuxifier"
      export TMUXIFIER_TMUX_OPTS=""
      eval "$(tmuxifier init -)"
      

      tmuxp

      install

      # Pip
      uv tool install tmuxp
      

      usage

      mkdir ~/.config/tmuxp
      cd ~/.config/tmuxp
      vim user.yaml
      # Refer to https://tmuxp.git-pull.com/configuration/index.html
      
      tmuxp load user
      

      Zellij

      install

      sudo pacman -S zellij
      

      Personal do

      vim ~/.zshrc
      
      export ZELLIJ_CONFIG_DIR="$HOME/.config/zellij"
      export ZELLIJ_CONFIG_FILE="$HOME/.config/zellij/user.kdl"
      
      zellij_tab_name_update() {
        if [[ -n $ZELLIJ ]]; then
          local current_dir=$PWD
          if [[ $current_dir == $HOME ]]; then
            current_dir="~"
          else
            current_dir=${current_dir##*/}
          fi
            command nohup zellij action rename-tab $current_dir >/dev/null 2>&1
            fi
      }
      zellij_tab_name_update
      chpwd_functions+=(zellij_tab_name_update)
      
      alias zw='zellij --layout=swap'
      

      reference

      cross-reference

      mark

      resource

      cache

      zjstatus & zjframes

      install

      mkdir $HOME/.config/zellij/plugins
      curl -L -o $HOME/.config/zellij/plugins/zjframes.wasm https://github.com/dj95/zjstatus/releases/download/v0.21.0/zjframes.wasm
      curl -L -o $HOME/.config/zellij/plugins/zjstatus.wasm https://github.com/dj95/zjstatus/releases/download/v0.21.0/zjstatus.wasm
      

      Zsh

      Zsh, short for the Z shell, is an extended Unix shell designed for interactive use and scripting. It blends features from several shells (bash, ksh, tcsh) and adds many enhancements for usability, customization, and power. [perplexity.ai]

      Zsh是Z shell的缩写,是一种扩展的Unix shell,旨在用于交互式使用和脚本编写。它融合了多个shell(bash、ksh、tcsh)的特性,并增加了许多增强功能,以提升可用性、自定义和功能强大性。 [perplexity.ai]

      install

      sudo pacman -S zsh zsh-completions
      

      Personal do

      sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
      git clone --depth=1 https://github.com/subnixr/minimal  ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/minimal
      git clone --depth=1 https://github.com/const-void/rose-pine-man ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/rose-pine-man
      rm ~/.zshrc
      git init
      git remote add origin https://github.com/scillidan/dotfiles.git
      git branch -M main
      git pull origin main
      

      reference

      cross-reference

      mark

      cache

      troubleshoot

      resource

      mark

      later

      cache

      wd

      usage

      # For example
      wd addcd ~/.config conf
      wd addcd ~/.config/nvim
      wd addcd ~/.config/zsh
      

      zpy

      usage

      # Arch
      mkdir .<dir>
      cd .<dir>
      envin
      pipi <pkg>
      vlauncher ~/Usr/Shell/.<dir> <pkg> ~/.local/bin/pyglossary
      da8
      <pkg>
      

      zsh-abbr

      reference

      zsh-ssh

      reference

      Zsh-z

      config

      vim .zshrc
      
      zinit wait lucid for agkozak/zsh-z
      
      # https://github.com/agkozak/zsh-z/issues/66
      zz() {
        cd "$(zshz -l 2>&1 | sed 's/^[0-9,.]* *//' | fzf -q "$_last_z_args")"
      }
      

      bin_windows

      cross-reference

      mark

      cache

      resource

      mark

      extra

      cache

      Chocolatey

      install

      1

      As Administrator:

      @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
      

      1. Installing Chocolatey CLI

      everything-cli

      install

      scoop install everything-cli
      

      config

      subl <path_to>\es.ini
      
      # For example
      [Indexing]
      exclude_files="!_build","!node_modules","!public","!site","!watch_later*","!*.bak","!*.tmp","!Hiberfil.sys","!Pagefile.sys","!Windows.old"
      exclude_folders="C:\$Recycle.Bin","C:\ProgramData","C:\SysReset","C:\System Volume Information","C:\Users\User\AppData\Local\Temp","C:\Windows"
      

      reference

      ExifTool

      install

      # Windows 10
      scoop install exiftool
      

      reference

      mingw-w64

      annex

      mingw

      Mintty

      annex

      mintty

      NSSM

      reference

      NTop

      install

      scoop install ntop
      

      SVG to PNG converter

      command

      svg2png "$1" -w <width>
      # For docset
      svg2png icon.svg -w 16 icon.png
      svg2png icon.svg -w 32 icon@2x.png
      

      Clink

      Clink is a Windows-oriented replacement/extension for the cmd.exe shell that brings GNU Readline-style features into the Windows command prompt. It integrates with an existing cmd.exe process, providing enhanced editing, history, completion, and scripting capabilities to make the Windows command line behave more like a Unix-style shell. [perplexity.ai]

      Clink是一个面向Windows的替代/扩展版本的cmd.exe shell,它将GNU Readline风格的功能引入Windows命令提示符。它与现有的cmd.exe进程集成,提供增强的编辑、历史记录、补全和脚本功能,使Windows命令行的行为更接近Unix风格的shell。 [perplexity.ai]

      cross-reference

      mark

      extra

      resource

      mark

      later

      cache

      Clink Setup

      install

      scoop bucket add narnaud https://github.com/narnaud/scoop-bucket
      scoop install clink-terminal
      

      usage

      cmd.exe /s /k clink-terminal
      

      PowerShell

      install

      scoop install pwsh
      

      cross-reference

      cache

      resource

      cache

      PowerSession

      install

      scoop install powersession-rs
      

      usage

      powersession rec file.cast
      powersession play file.cast
      

      Scoop

      install

      1 2 3

      Set-ExecutionPolicy ByPass -Scope Process -Force
      # If scoop installed or need installing second scoop (into a NTFS mount), 
      # Remove any `scoop` in PATH and Modify following two in ENV. Until the installation is complete.
      $env:SCOOP='<path_to>\Scoop'
      $env:SCOOP_GLOBAL='<path_to>\Scoop'
      [Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
      Get-ChildItem Env:
      iex "& {$(irm get.scoop.sh)} -RunAsAdmin"
      

      Or Download Source code (zip) from Releases.

      set SCOOP_PORTABLE=U:\Usr\Scoop
      mkdir -p %SCOOP_PORTABLE%\apps\scoop
      unzip "<path_to>\Scoop-0.5.3.zip"
      mv <path_to>\Scoop-0.5.3 %SCOOP_PORTABLE%\apps\scoop\current
      git clone --depth=1 https://github.com/ScoopInstaller/Main %SCOOP_PORTABLE%\buckets\main
      iex "& {$(irm get.scoop.sh)} -RunAsAdmin"
      

      usage

      # Install pkg
      # scoop update innounp
      scoop install <pkg>
      scoop install https://raw.githubusercontent.com/Calinou/scoop-games/refs/heads/master/bucket/doukutsu-rs.json
      # Clean up old installed version
      scoop cleanup *
      # Only download pkg files
      scoop download <pkg>
      # Show local pkg files
      scoop cache show
      

      Update scoop

      scoop update scoop
      

      Or4:

      cd <path_to>\Scoop\apps\scoop\current
      git fetch
      git pull
      

      Add bucket

      scoop bucket add extras
      scoop bucket add nonportable
      scoop bucket add nirsoft
      scoop bucket add versions
      scoop bucket add java
      

      Or:

      cd <path_to>\Scoop\buckets
      # git clone --depth=1 https://github.com/ScoopInstaller/Main
      git clone --depth=1 https://github.com/ScoopInstaller/Extras
      git clone --depth=1 https://github.com/ScoopInstaller/Nonportable
      git clone --depth=1 https://github.com/kodybrown/scoop-nirsoft
      git clone --depth=1 https://github.com/ScoopInstaller/Versions
      git clone --depth=1 https://github.com/ScoopInstaller/Java
      

      reference

      cross-reference

      mark

      cache

      resource

      mark

      cache


      1. Scoop (un)installer

      2. CMD.exe wrapper

      3. About the Download Directory

      4. scoop update fails to connect to GitHub

      BucketTemplate

      reference

      Reference examples

      scoop-search

      install

      scoop install scoop-search
      

      git

      install

      # Arch
      sudo pacman -S git
      # Windows 10
      scoop install git
      

      Personal do

      # Linux
      git config --global core.autocrlf input
      # Windows
      git config --global core.autocrlf true
      

      usage

      config

      git config --global user.email "user@email.com"
      git config --global user.name "username"
      

      Init

      git init
      git remote add origin https://github.com/<user>/<repo>
      git branch -M main
      

      Push

      # git diff
      git add <file1> <dir1> <dir2>
      # git status
      git commit -m "<commit_info>"
      # git push -u origin main
      git push
      

      Pull

      # git pull origin main
      git pull
      

      Push tag

      # git tag -d v0.0.1
      # git push --delete origin v0.0.1
      git tag v0.0.1
      git push origin v0.0.1
      

      Other

      git config --global http.proxy "socks5://127.0.0.1:<port>"
      git config --global --unset http.proxy
      
      git config --global http.sslVerify true
      git config --global http.sslVerify false
      
      # Undo and re-push
      git fetch --all
      git reset --hard <commit-hash>
      # git reset --hard HEAD~1
      git push --force origin <branch>
      
      # Rebase the above 3 commit
      git rebase -i HEAD~3
      
      pick <the first commit>
      squash <will merge into first commit>
      squash <will merge into first commit>
      

      reference

      cross-reference

      mark

      later

      extra

      cache

      resource

      mark

      cache

      Gist

      reference

      Commitizen for contributors

      install

      # Node.js
      pnpm add -g commitizen
      

      forgit

      help

      - git add
      		用于将工作目录中的更改暂存,以便进行下一个提交。它可以将新文件、修改过的文件或已删除的文件添加到暂存区。一旦更改被暂存,它们将被包括在下一个提交中
      
      - git log
      		显示当前分支的提交历史。它提供了一系列提交记录,以及提交哈希、作者、日期和提交信息等信息
      
      - .gitignore
      		一个纯文本文件,用于在 Git 仓库中指定 Git 应该忽略的文件和目录。列在 .gitignore 中的文件和目录将不会被 Git跟踪,这意味着它们的更改不会被暂存或提交。这对于排除临时文件、构建产物、秘密密钥或任何其他不应纳入版本控制的文件非常有用
      - git diff
      		显示工作目录与索引(已暂存文件)之间的差异,或显示提交、分支等之间的差异。它提供对所做更改的逐行查看
      
      - git show
      		显示特定提交的信息,包括提交信息、作者和在该提交中所做的更改。您可以指定提交哈希、分支名或标签以查看不同的版本
      ,
      - git reset HEAD <file>
      		取消暂存指定的文件,将其有效地移回工作目录,而不会丢失更改。它用于重新指定下一个提交中暂存的内容
      
      - git checkout <file>
      		将指定的文件恢复到当前分支的最后提交状态。对此文件在最后提交后所做的任何更改都会丢失
      
      - git checkout <branch>
      		切换当前工作分支到指定的分支,更新工作目录以匹配该分支的最后提交状态
      
      - git branch -D <branch>
      		强制删除指定的分支,即使该分支有未合并的更改。这对于清理不再需要的分支非常有用
      
      - git checkout <tag>
      		检出仓库中的特定标签。这将使工作目录进入一个“分离的HEAD”状态,在历史记录中的该时刻
      
      - git checkout <commit>
      		在“分离的HEAD”状态下检出指定的提交,允许您查看该提交时的项目状态,而不移动分支指针
      
      - git revert <commit>
      		创建一个新的提交,用于撤销指定提交中所做的更改。这是一种安全地从您的项目历史中删除更改的方法
      
      - git stash
      		临时保存您在工作目录中尚未准备好提交的修改。您可以稍后取回这些更改
      
      - git stash push
      		暂存您的更改,您可以选择添加信息或命名暂存。这允许您在不提交的情况下保存工作,类似于`git stash`
      
      - git clean
      		从工作目录中删除未跟踪的文件。可以使用选项来指定是否仅删除目录或仅删除文件
      
      - git cherry-pick
      		将特定提交中的更改应用到您当前的分支。这允许您从另一个分支中包含特定的更改,而无需合并整个分支
      
      - git rebase -i
      		开始一次交互式变基,允许您编辑、合并或重新排列当前分支中的提交。这对于清理提交历史非常有用
      
      - git reflog
      		显示影响当前仓库的所有引用(或操作)的日志,允许您恢复丢失的提交或分支
      
      - git blame
      		显示文件中每行的最后修改信息,包括提交哈希和作者。这对于跟踪谁做了特定更改非常有用
      
      - git commit --fixup && git rebase -i --autosquash
      		以“fixup”信息提交更改,指示该提交应在交互式变基期间合并至特定的先前提交。`--autosquash`选项在变基过程中自动重新排列提交以执行fixup
      
      - git commit --squash && git rebase -i --autosquash
      		以“squash”信息提交更改,指示该提交应在变基期间与先前的提交合并。与前一个命令一样,`--autosquash`有助于在变基过程中自动重新排列提交
      
      - git commit --fixup=reword && git rebase -i --autosquash
      		创建一个修复提交,同时在交互式变基期间更改指定提交的提交信息。该提交将与指定提交合并,其信息将根据fixup更新
      

      git-branchless

      usage

      git branchless init
      git branchless init --uninstall
      

      git-cliff

      usage

      git cliff --init keepachangelog
      

      git-crypt

      install

      # Arch
      sudo pacman -S git-crypt
      # Windows 10
      scoop install git-crypt
      

      usage

      cd <repo>
      vim .gitattributes
      
      <secretfile> filter=git-crypt diff=git-crypt
      <secretdir/**> filter=git-crypt diff=git-crypt
      
      git-crypt init
      # git-crypt add-gpg-user <gnupg_id>
      # git-crypt unlock
      git-crypt export-key <path_to>/git-crypt_key_<repo>
      git-crypt status
      git-crypt unlock <path_to>/git-crypt_key_<repo>
      

      Personal do

      chezmoi init
      chezmoi add ~/.gnupg
      cd ~/.local/share/chezmoi
      vim ~/.config/chezmoi/.chezmoiignore
      
      * filter=git-crypt diff=git-crypt
      
      git-crypt export-key <path_to>/git-crypt_key
      git-crypt status
      chezmoi cd
      
      # chezmoi
      git remote add origin https://github.com/<user>/<repo>
      git branch -M main
      git add .
      git commit -m "<commit>"
      git push -u origin main
      

      git-filter-repo

      git-sync

      install

      git clone --depth=1 https://github.com/simonthum/git-sync
      cd git-sync
      

      usage

      git config --bool branch.main.sync true
      git-sync
      

      gitleaks

      install

      # Arch
      sudo pacman -S gitleaks
      # Windows 10
      scoop install gitleaks
      

      gptcommit

      install

      # Arch
      yay -S --noconfirm gptcommit-bin
      # Cargo
      cargo install --force gptcommit
      

      config

      Add into environment:

      GPTCOMMIT__OPENAI__API_KEY=<openai_apikey>
      GPTCOMMIT__OPENAI__API_BASE=<openai_base_url>
      GPTCOMMIT__OPENAI__MODEL=<openai_model>
      

      Lazygit

      install

      # Arch
      sudo pacman -S lazygit
      # Windows 10
      scoop install lazygit
      

      Personal do

      # Windows 10
      del "%LOCALAPPDATA%\lazygit\config.yml"
      mklink "%LOCALAPPDATA%\lazygit\config.yml" "%DOTFILES_DIR%\.config\lazygit\config.yml"
      

      multi-git-status

      install

      # Arch
      yay -S --noconfirm multi-git-status
      

      GitHub CLI

      GitHub CLI is a command-line tool that lets you interact with GitHub directly from your terminal. It brings core GitHub features—such as managing repositories, issues, pull requests, and workflow runs—into the shell, so you can perform common GitHub tasks without switching to a web browser. It’s maintained by GitHub and is open source, available for macOS, Windows, and Linux. [perplexity.ai]

      GitHub CLI是一个命令行工具,让您可以直接从终端与GitHub互动。它将核心GitHub功能——如管理仓库、问题、拉取请求和工作流运行——集成到shell中,因此您可以在不切换到网页浏览器的情况下执行常见的GitHub任务。它由GitHub维护,开源,适用于macOS、Windows和Linux。 [perplexity.ai]

      install

      # Arch
      sudo pacman -S github-cli
      # Windows 10
      scoop install gh
      

      config

      # Windows 10
      set "GH_CONFIG_DIR=%USERPROFILE%\.config\gh"
      

      usage

      gh auth login
      
      gh extension install <user/repo>
      gh extension remove <user/repo>
      

      cross-reference

      mark

      extra

      resource

      later

      cache

      gh-clone-org

      install

      gh extension install matt-bartel/gh-clone-org
      

      gh download

      install

      gh extension install yuler/gh-download
      

      Github CLI Extension: Tidy

      gh tidy does several things:

      • Checks out master/main and pulls the latest from remote origin
      • Runs ‘git gc’ to clean up unnecessary files & optimize your local repo
      • Checks your local branches for ones that show as merged to master, and asks for your permission to delete them
      • Checks your local branches for ones that have their corresponding pull requests merged, and asks for your permission to delete them
      • If flagged, rebases all your local branches to the latest master [HaywardMorihara/gh-tidy]

      gh tidy执行几个操作:

      • 检出master/main并从远程origin拉取最新内容
      • 运行’git gc’清理不必要的文件并优化本地仓库
      • 检查本地分支中是否有已合并到master的分支,并询问您是否删除它们
      • 检查本地分支中是否有其对应的拉取请求已合并的分支,并询问您是否删除它们
      • 如果被标记,重新基于最新的master合并您所有的本地分支 [HaywardMorihara/gh-tidy]

      install

      gh extension install HaywardMorihara/gh-tidy
      

      kokoro

      install

      1

      git clone --depth=1 https://github.com/hexgrad/kokoro
      cd kokoro/kokoro.js
      npm install
      npm run build
      cd ../demo
      npm install
      npm run build
      

      usage

      cd kokoro/demo
      npm run preview
      

      cross-reference

      mark

      resource

      cache

      annex

      kokoro


      1. Kokoro Text-to-Speech

      kokoro-tts-cli

      install

      git clone --depth=1 https://github.com/cheuerde/kokoro-tts-cli
      cd kokoro-tts-cli
      uv venv
      .venv\Scripts\activate.bat
      uv pip install torch --index-url https://download.pytorch.org/whl/cu121
      uv pip install tqdm sounddevice scipy numpy phonemizer transformers
      uv pip install windows-curses
      python setup.py install
      

      usage

      set KOKORO_PATH="<path_to>\Kokoro-TTS-Local"
      echo 'Hello! How are you today?' | kokoro-tts
      

      reference

      Kokoro TTS Local

      install

      git clone --depth=1 https://github.com/PierrunoYT/Kokoro-TTS-Local
      cd Kokoro-TTS-Local
      python -m venv venv
      venv\Scripts\activate.bat
      pip install torch --index-url https://download.pytorch.org/whl/cu121
      pip install -r requirements.txt
      pip install hf_transfer
      

      usage

      ## As CLI
      python tts_demo.py
      
      ## As Web UI
      pip install ordered_set pypinyin cn2an jieba
      python gradio_interface.py
      

      annex

      kokoro-tts-local

      Kokoro TTS

      install

      # Pip
      uv tool install kokoro-tts
      
      1. Download voice data (bin format is preferred) from here
      2. Download the model from here

      usage

      echo "Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do: once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it, “and what is the use of a book,” thought Alice “without pictures or conversations?”" | kokoro-tts - --stream --voice "af_bella" --voices <path_to>\voices-v1.0.bin --model <path_to>\kokoro-v1.0.onnx
      

      ltts

      install

      git clone --depth=1 https://github.com/fcjr/ltts
      cd ltts
      uv venv .venv --python 3.12
      .venv\bin\activate.bat
      uv pip install hf_transfer hf-xet
      uv sync
      

      usage

      ltts "your text here" -v af_bella --say
      ltts "your text here" -v af_bella -o speech.mp3
      

      Neovim

      Neovim is a Vim-based text editor engineered for extensibility and usability, to encourage new applications and contributions. [neovim.io]

      Neovim是一个基于Vim的文本编辑器,旨在提高可扩展性和可用性,以鼓励新的应用程序和贡献。 [neovim.io]

      install

      # Arch
      sudo pacman -S neovim
      # Windows 10
      scoop insatll neovim
      

      Build from source

      1 2 3

      # Ubuntu 22 ARM
      sudo apt-get install ninja-build gettext cmake unzip curl
      
      1. Get Source code from Neovim - Releases.
      2. Decompress it to neovim/.
      cd neovim
      # rm -r build
      make CMAKE_EXTRA_FLAGS="-DCMAKE_INSTALL_PREFIX=$HOME/neovim"
      make install
      ln -s ~/neovim/bin/nvim ~/.local/bin/
      # rm -rf ~/.local/share/nvim/lazy/
      nvim
      

      Personal do

      # Arch
      sudo pacman -S \
      	ffmpegthumbnailer
      yay -S --noconfirm \
      	pdftoppm \
      	epub-thumbnailer-git \
      	wordnet-common
      mkdir -p ~/.config/nvim/dictionary
      wget ~/.config/nvim/dictionary/word.txt https://raw.githubusercontent.com/dwyl/english-words/refs/heads/master/words.txt
      
      # Windows 10
      set "NEOVIM_CONFIG=%LOCALAPPDATA%\nvim"
      # set "NEOVIM_DATA=%LOCALAPPDATA%\nvim-data"
      del "%NEOVIM_CONFIG%\cheatsheet.txt"
      del "%NEOVIM_CONFIG%\init.lua"
      rmdir /S /Q "%NEOVIM_CONFIG%\lua"
      mklink "%NEOVIM_CONFIG%\cheatsheet.txt" "%DOTFILES_DIR%\.config\nvim\cheatsheet.txt"
      mklink "%NEOVIM_CONFIG%\init.lua" "%DOTFILES_DIR%\.config\nvim\init.lua"
      mklink /J "%NEOVIM_CONFIG%\lua" "%DOTFILES_DIR%\.config\nvim\lua"
      

      config

      Configure LSP

      Configure CMP

      Neovim headless service

      Not recommended. I suspect it once kill my RPI-5’s os.

      On Ubuntu 24 ARM:

      vim ~/.config/systemd/user/nvim-headless.service
      
      [Unit]
      Description=Start Neovim Headless Server
      
      [Service]
      ExecStart=nvim --headless --listen 0.0.0.0:1234
      Restart=on-failure
      User=<username>
      
      [Install]
      WantedBy=default.target
      
      systemctl --user daemon-reload
      systemctl --user enable --now nvim-headless
      

      On Windows10:

      C:\Users\User\Scoop\apps\git\current\usr\bin\ssh.exe <username>@<your_host> -L 1234:0.0.0.0:1234 -- /home/<your_host>/.local/bin/nvim --headless --listen 0.0.0.0:1234
      neovide --server <your_host>:1234
      

      reference

      cross-reference

      mark

      extra

      cache

      resource

      mark

      later

      cache

      cancel


      1. PPA not working with lazy.nvim

      2. Neovim - Build prerequisites

      3. Install from source

      Blink Completion (blink.cmp)

      reference

      resource

      mark

      later

      cache

      cmp-lsp-rimels

      reference

      cross-reference

      cache

      godotdev.nvim

      install

      uv tool install gdtoolkit
      uv tool install neovim-remote
      

      config

      • Godot -> Editor -> Editor Settings -> Text Editor -> External
        • Use External Editor (On)
        • Exec Path /usr/bin/neovide
        • Exec Flag --frame=none {file}

      lazy.nvim

      Personal do

      # Windows 10
      git clone https://github.com/folke/lazy.nvim C:\Users\User\AppData\Local\nvim-data\lazy\lazy.nvim
      

      troubleshoot

      LuaSnip

      reference

      resource

      cache

      LunarVim

      config

      1

      # Windows 10
      set "XDG_DATA_HOME=%APPDATA%"
      set "XDG_CONFIG_HOME=%USERPROFILE%\AppData\Local"
      set "XDG_CACHE_HOME=%LocalAppData%\Temp"
      set "XDG_RUNTIME_DIR=%LocalAppData%\Temp"
      set "LUNARVIM_BASE_DIR=%APPDATA%\lunarvim\lvim"
      set "LUNARVIM_CACHE_DIR=%LocalAppData%\Temp\lvim"
      set "LUNARVIM_CONFIG_DIR=%LocalAppData%\lvim"
      set "LUNARVIM_RUNTIME_DIR=%APPDATA%\lunarvim"
      

      usage

      lvim
      

      reference

      annex

      lunarvim


      1. Installation

      mason.nvim

      reference

      resource

      mark

      mini.nvim

      resource

      mark

      cache

      nvim-dap

      reference

      resource

      mark

      cache

      nvim-treesitter

      reference

      troubleshoot

      resource

      mark

      cache

      obsidian.nvim

      reference

      packer.nvim

      reference

      telescope.nvim

      reference

      resource

      markdown

      cache

      vanta.nvim

      annex

      vanta.nvim

      Vim

      install

      # Arch
      sudo pacman -S vim
      # Windows 10
      scoop install vim
      

      Personal do

      1

      vim ~/.vimrc
      
      set tabstop=4
      set shiftwidth=4
      set noexpandtab
      

      reference

      cross-reference

      cache

      resource

      cache

      annex

      gvim


      1. python - How to maintain tabs when pasting in Vim - Stack Overflow

      Wim

      config

      # Windows 10
      set "PYTHONHOME=%LocalAppData%\Programs\Python\Python310"
      set "PYTHONPATH=%LocalAppData%\Programs\Python\Python310\python.exe"
      set "PYTHONIOENCODING=UTF-8"
      set "DYNAMIC_PYTHON3_DLL=%LocalAppData%\Programs\Python\Python310\python310.dll"
      

      annex

      wim

      Yazi

      Yazi is a blazing-fast terminal file manager written in Rust, designed around asynchronous I/O. It focuses on high performance, extensibility, and rich terminal UI features, making file exploration and management in the command line faster and more convenient for power users. Key highlights include full asynchronous I/O, real-time task management, multiple image and preview protocols, a plugin system, and tight integrations with common developer tooling. [sxyazi/yazi]

      Yazi是一个以Rust编写的快速终端文件管理器,设计围绕异步I/O。它专注于高性能、可扩展性和丰富的终端用户界面特性,使得在命令行中的文件浏览和管理对高级用户来说更快速和便利。主要亮点包括完全的异步I/O、实时任务管理、多个图像和预览协议、插件系统,以及与常用开发工具的紧密集成。 [sxyazi/yazi]

      install

      # Arch
      sudo pacman -S yazi
      # Windows 10
      scoop install yazi
      

      Personal do

      ya pkg add gosxrgxx/flexoki-dark
      ya pkg add gosxrgxx/flexoki-light
      ya pkg add AnirudhG07/custom-shell
      ya pkg add lihuax-me/hevi
      ya pkg add Lil-Dank/lazygit
      ya pkg add boydaihungst/mediainfo
      ya pkg add yazi-rs/plugins:piper
      # Only Arch
      ya pkg add kirasok/epub-preview
      ya pkg add NoponyAsked/sxiv
      ya pkg add lpnh/fr
      ya pkg add uhs-robert/recycle-bin
      

      setting

      1

      # Unix-like
      mkdir ~/.config/yazi/
      # Windows 10
      mkdir %AppData%\yazi\config\
      

      command

      ya pkg add <pkg>
      ya pkg upgrade
      

      reference

      cross-reference

      later

      cache

      resource

      mark

      later


      1. Yazi - Configuration

      duckdb.yazi

      install

      ya add wylie102/duckdb
      
      vim ~/.config/yazi/init.lua
      
      require("duckdb"):setup()
      
      vim ~/.config/yazi/yazi.toml
      
      [plugin]
      prepend_preloaders = [
      	{ name = "*.csv", run = "duckdb", multi = false },
        { name = "*.tsv", run = "duckdb", multi = false },
        { name = "*.json", run = "duckdb", multi = false },
        { name = "*.parquet", run = "duckdb", multi = false },
        { name = "*.txt", run = "duckdb", multi = false },
        { name = "*.xlsx", run = "duckdb", multi = false },
      ]
      prepend_previewers = [
        { name = "*.csv", run = "duckdb" },
        { name = "*.tsv", run = "duckdb" },
        { name = "*.json", run = "duckdb" },
        { name = "*.parquet", run = "duckdb" },
        { name = "*.txt", run = "duckdb" },
        { name = "*.xlsx", run = "duckdb" },
        { name = "*.db", run = "duckdb" },
        { name = "*.duckdb", run = "duckdb" },
      ]
      
      vim ~/.config/yazi/keymap.toml
      
      [[mgr.prepend_keymap]]
      on = "H"
      run = "plugin duckdb -1"
      desc = "Scroll one column to the left"
      
      [[mgr.prepend_keymap]]
      on = "L"
      run = "plugin duckdb +1"
      desc = "Scroll one column to the right"
      
      [[mgr.prepend_keymap]]
      on = ["d", "o"]
      run = "plugin duckdb -open"
      desc = "open with duckdb"
      
      [[mgr.prepend_keymap]]
      on = ["d", "u"]
      run = "plugin duckdb -ui"
      desc = "open with duckdb ui"
      

      whoosh.yazi

      install

      ya pkg add WhoSowSee/whoosh
      
      vim ~/.config/yazi/init.lua
      
      local bookmarks = {
      	-- For example
      	{ tag = "Downloads", path = "~/Downloads", key = { "d", "d" } },
      	{ tag = "Usr", path = "~/Usr", key = { "d", "u" } },
      }
      -- Windows
      if ya.target_family() == "windows" then
      	local home_path = os.getenv("USERPROFILE")
      	table.insert(bookmarks, {
      		tag = "Scoop Local",
      		path = os.getenv("SCOOP") or (home_path .. "\\scoop"),
      		key = "p",
      	})
      end
      require("whoosh"):setup({
      	bookmarks = bookmarks,
      	jump_notify = false,
      	keys = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
      	path = (ya.target_family() == "windows" and os.getenv("APPDATA") .. "\\yazi\\config\\bookmark")
      		or (os.getenv("HOME") .. "/.config/yazi/bookmark"),
      	path_truncate_enabled = false,
      	path_max_depth = 3,
      	fzf_path_truncate_enabled = false,
      	fzf_path_max_depth = 5,
      	path_truncate_long_names_enabled = false,
      	fzf_path_truncate_long_names_enabled = false,
      	path_max_folder_name_length = 20,
      	fzf_path_max_folder_name_length = 20,
      	history_size = 10,
      	history_fzf_path_truncate_enabled = false,
      	history_fzf_path_max_depth = 5,
      	history_fzf_path_truncate_long_names_enabled = false,
      	history_fzf_path_max_folder_name_length = 30,
      })
      
      vim ~/.config/yazi/keymap.toml
      
      [[mgr.prepend_keymap]]
      on = "["
      run = "plugin whoosh jump_by_key"
      desc = "Jump bookmark by key"
      
      # Direct fuzzy search access
      [[mgr.prepend_keymap]]
      on = "}"
      run = "plugin whoosh fuzzy"
      desc = "Direct fuzzy search for bookmarks"
      
      # Basic bookmark operations
      [[mgr.prepend_keymap]]
      on = ["]", "a"]
      run = "plugin whoosh save"
      desc = "Add bookmark (hovered file/directory)"
      
      [[mgr.prepend_keymap]]
      on = ["]", "A"]
      run = "plugin whoosh save_cwd"
      desc = "Add bookmark (current directory)"
      
      # Temporary bookmarks
      [[mgr.prepend_keymap]]
      on = ["]", "t"]
      run = "plugin whoosh save_temp"
      desc = "Add temporary bookmark (hovered file/directory)"
      
      [[mgr.prepend_keymap]]
      on = ["]", "T"]
      run = "plugin whoosh save_cwd_temp"
      desc = "Add temporary bookmark (current directory)"
      
      # Jump to bookmarks
      [[mgr.prepend_keymap]]
      on = ["]", "f"]
      run = "plugin whoosh jump_by_fzf"
      desc = "Jump bookmark by fzf"
      
      # Delete bookmarks
      [[mgr.prepend_keymap]]
      on = ["]", "d"]
      run = "plugin whoosh delete_by_key"
      desc = "Delete bookmark by key"
      
      [[mgr.prepend_keymap]]
      on = ["]", "D"]
      run = "plugin whoosh delete_by_fzf"
      desc = "Delete bookmarks by fzf (use TAB to select multiple)"
      
      [[mgr.prepend_keymap]]
      on = ["]", "C"]
      run = "plugin whoosh delete_all"
      desc = "Delete all user bookmarks"
      
      # Rename bookmarks
      [[mgr.prepend_keymap]]
      on = ["]", "r"]
      run = "plugin whoosh rename_by_key"
      desc = "Rename bookmark by key"
      
      [[mgr.prepend_keymap]]
      on = ["]", "R"]
      run = "plugin whoosh rename_by_fzf"
      desc = "Rename bookmark by fzf"
      

      dev

      cross-reference

      later

      extra

      cache

      resource

      cache

      3D Printer

      reference

      cache

      E-ink

      reference

      resource

      cache

      Printer

      reference

      resource

      cache

      GPi CASE 2

      GPi CASE 2 is a handheld gaming case designed to house the Raspberry Pi Compute Module 4 (CM4). It transforms the CM4 into a portable retro gaming console resembling a Game Boy. The device includes a 3.0-inch IPS screen, a built-in 4000mAh lithium battery with USB-C charging, and various buttons including hidden rear X/Y and turbo/home buttons. It supports popular retro gaming software such as RetroPie and Recalbox, enabling users to play games from multiple retro platforms. Due to the nature of using the CM4, the GPi CASE 2 does not support using an SD card slot if the CM4 has built-in eMMC storage; instead, the storage size for games is limited to the eMMC capacity on the CM4. A “safe shutdown” script and display patches are often installed to optimize the system for this setup. The case is sold without the CM4 included, supporting various CM4 models including those with or without WiFi or eMMC.
      In summary, GPi CASE 2 is a compact, Game Boy-inspired Raspberry Pi CM4 case for retro gaming emulation with enhanced performance over earlier versions that used Raspberry Pi Zero boards. [perplexity.ai]

      GPi CASE 2是一个手持游戏盒,旨在容纳树莓派计算模块4(CM4)。它将CM4转变为一个便携式复古游戏机,外形类似于Game Boy。该设备包括一个3.0英寸IPS屏幕、内置4000mAh锂电池(支持USB-C充电),以及包括隐藏的后面X/Y按钮和涡轮/主页按钮在内的各种按钮。它支持流行的复古游戏软件,如RetroPie和Recalbox,使用户能够玩来自多个复古平台的游戏。由于使用CM4的特性,如果CM4内置了eMMC存储,GPi CASE 2不支持使用SD卡插槽;相反,游戏的存储大小受到CM4上eMMC容量的限制。通常会安装“安全关机”脚本和显示补丁,以优化该系统的设置。该盒子销售时不包含CM4,支持包括有WiFi或无WiFi和eMMC的各种CM4型号。
      总之,GPi CASE 2是一个紧凑型、受到Game Boy启发的树莓派CM4机壳,旨在进行复古游戏模拟,性能优于早期使用树莓派Zero主板的版本。 [perplexity.ai]

      Choose a OS

      Flash OS to SD card

      1. Get SD Memory Card Formatter. Use it to format SD card.
      2. Get Raspberry Pi Imager.
      3. Raspberry Pi Imager:
        1. Raspberry Pi Device → Raspberry Pi 4
        2. 请选择需要写入的操作系统 → Emulation and game OS
        3. 储存卡 → SD card
        4. 可选配置 → 在完成后卸载磁盘 (Off)
        5. Next

      Install display patch and safe-shutdown script

      1. Click Download GPiCase2 patch on GPiCase2-Script to download GPi_Case2_patch/.
      2. Decompress it to GPi_Case2_patch/.
      3. Copy all files under GPi_Case2_patch_<os> to <SD card>/.
      4. (Windows 10) Run Install_patch.bat.
      5. Create a file gpi.sh:
      wget -O - "https://raw.githubusercontent.com/RetroFlag/GPiCase2-Script/main/retropie_install_gpi2.sh" | sudo bash
      

      First boot

      1. Insert SD card into GPi CASE 2, turn it on.
      2. After first boot, you can hold a button to configure keymap. You can hold any button until it is be skipped.

      reference

      cross-reference

      mark

      annex

      gpi-case-2_20241018.mp4, (bilibili

      Raspberry Pi 4

      reference

      Raspberry Pi 5

      install

      1. Get balenaEtcher-win32-x64-*.zip from Etcher - Releases.
      2. Decompress it to balenaEtcher/.
      3. Get Raspberry Pi Imager.
      4. Raspberry Pi Imager
        1. Raspberry Pi Device → Raspberry Pi 5
        2. 请选择需要写入的操作系统 → Other general-purpose OS → Ubuntu → Ubuntu Desktop 24.10 (64-bit)
        3. 储存卡 → SD card
        4. Next
      5. Install SD card in Pi5 and do user settings
        1. Enable WiFi
        2. Enable SSH1:
          sudo apt install ssh
          sudo systemctl enable ssh
          sudo ufw allow ssh
          sudo ufw enable
          sudo shutdown
          
      6. Put SD card into card reader. Add new line dtparam=pciex1_gen3 into SD card\config.txt2.
      7. balenaEtcher → clone SD card to NVMe driver.
      8. Install NVMe driver in Pi5, power on.
      9. You can log in to it via SSH.

      1. Quick Guide to Enabling SSH on Ubuntu 24.04

      2. Ubuntu 24.04 LTS Raspberry Pi 5. NVMe install Fix

      Uconsole CM4

      1 2 3

      Install Arch Linux ARM

      sudo wipefs --all /dev/sdc
      sudo fdisk --list
      sudo fdisk /dev/sdc
      sudo mkfs.vfat /dev/sdc1
      sudo mkfs.ext4 /dev/sdc2
      
      sudo umount /mnt/boot
      sudo umount /mnt
      
      sudo fdisk --list
      sudo mount /dev/sdc2 /mnt
      sudo mkdir /mnt/boot
      sudo mount /dev/sdc1 /mnt/boot
      
      sudo pacman -Sy
      sudo pacman -S qemu-user-static qemu-user-static-binfmt arch-install-scripts
      
      sudo bsdtar -xpf ArchLinuxARM-aarch64-latest.tar.gz -C /mnt
      ls -l /mnt
      sudo genfstab -U /mnt | sudo tee -a /mnt/etc/fstab
      
      sudo arch-chroot /mnt
      pacman-key --init
      pacman-key --populate archlinuxarm
      pacman -Sy raspberrypi-bootloader firmware-raspberrypi
      pacman -R linux-aarch64
      
      pacman -U --noconfirm linux-uconsole-cm3-rpi64*.pkg.zst
      pacman -U --noconfirm ap6256-firmware*.pkg.tar
      
      git clone --depth=1 https://github.com/PotatoMania/uconsole-cm3
      # git clone --depth=1 https://github.com/systematiccaos/uconsole-cm3-cm4
      cd uconsole-cm3/PKGBUILDs/linux-uconsole-cm3-rpi64
      git clone --depth=1 -b rpi-6.1.y https://github.com/raspberrypi/linux.git
      tar -czvf linux.tar.gz linux
      cd linux
      git status
      git restore --source=HEAD :/
      
      sudo pacman -S cpio pahole aarch64-linux-gnu-gcc make flex bison patch
      makepkg
      pacman -Syu
      
      useradd -m auruser
      passwd auruser
      echo "auruser ALL=(ALL) ALL" > /etc/sudoers.d/auruser
      chmod 440 /etc/sudoers.d/auruser
      chmod u+w /home/auruser/ap6256-firmware
      pacman -S fakeroot sudo
      su - auruser
      ls -l /home/auruser/ap6256-firmware
      export PKGDEST=/tmp/my_package_destination
      export SRCDEST=/tmp/my_source_directory
      export BUILDDIR=/tmp/my_build_directory
      makepkg
      pacman -U /tmp/my_package_destination/ap6256-firmware-0.1.20231120-1-any.pkg.tar.xz
      
      sudo vim /mnt/boot/config.txt
      
      ignore_lcd=1
      disable_fw_kms_setup=1
      max_framebuffers=2
      arm_boost=1
      
      # setup headphone detect pin
      gpio=10=ip,np
      
      # boot kernel directly
      kernel=Image.gz
      arm_64bit=1
      initramfs initramfs-linux.img followkernel
      
      # overlays
      dtoverlay=dwc2,dr_mode=host
      dtoverlay=vc4-kms-v3d
      dtoverlay=audremap,pins_12_13
      dtparam=audio=on
      dtoverlay=uconsole
      
      pacman -S iwe
      sudo vim /mnt/boot/config.txt
      
      [all]
      ignore_lcd=1
      disable_fw_kms_setup=1
      disable_audio_dither
      pwm_sample_bits=20
      
      # setup headphone detect pin
      gpio=10=ip,np
      
      # boot custom kernel
      kernel=Image.gz
      arm_64bit=1
      initramfs initramfs-linux.img followkernel
      
      dtoverlay=dwc2,dr_mode=host
      dtoverlay=audremap,pins_12_13
      dtparam=audio=on
      
      [pi3]
      dtoverlay=vc4-kms-v3d
      dtoverlay=uconsole
      
      [cm4]
      arm_boost=1
      max_framebuffers=2
      dtoverlay=vc4-kms-v3d-pi4
      dtoverlay=uconsole,cm4
      
      [all]
      # whatever you need
      
      sudo umount /mnt/boot /mnt
      

      reference

      resource

      cache


      1. How to install ArchLinux on uConsole/CM3 from scratch

      2. uConsole CM3

      3. Wifi not working on CM4

      lib

      cross-reference

      mark

      later

      extra

      cache

      resource

      mark

      cache

      Regex

      reference

      SQL

      command

      -- Generate feed URLs based on subscription type.
      IF(ISNUMBER(SEARCH("release", [subscribe])), CONCATENATE([url], "/releases.atom"), IF(ISNUMBER(SEARCH("commit", [subscribe])), CONCATENATE([url], "/commits.atom"), ""))
      
      -- Select all records from table with multi-column sorting.
      SELECT *
      FROM `table_1`
      ORDER BY `column_1` ASC, `column_2` ASC, `column_2` ASC;
      
      -- Search for a string in multiple columns of a table.
      SELECT *
      FROM `table_1`
      WHERE `column_1` LIKE '%string%'
      OR `column_2` LIKE '%string%'
      OR `column_3` LIKE '%string%';
      

      reference

      lib_windows

      cross-reference

      mark

      cache

      resource

      mark

      cache

      Cygwin

      config

      subl %CMDER_ROOT%/vendor/setpath(cygwin).bat
      
      SET PATH=^
      %    =%%CMDER_ROOT%\vendor;^
      %    =%C:\cygwin64\bin;^
      %    =%C:\cygwin64\sbin;^
      %    =%%PATH%
      

      init

      apt-cyg install git vim zsh
      

      MSYS2

      config

      subl %CMDER_ROOT%/vendor/setpath(msys2).bat
      
      SET PATH=^
      %    =%%CMDER_ROOT%\vendor;^
      %    =%C:\msys64\mingw64\bin;^
      %    =%C:\msys64\usr\bin;^
      %    =%C:\msys64\usr\lib;^
      %    =%C:\msys64\mingw64\lib;^
      %    =%C:\msys64\usr\include;^
      %    =%C:\msys64\mingw64\include;^
      %    =%%PATH%
      

      init

      pacman -Syyu
      # pacman -S mingw-w64-ucrt-x86_64-gcc
      # pacman -S mingw-w64-x86_64-cargo-c mingw-w64-x86_64-protobuf
      # cargo install atuin
      

      reference

      resource

      mark

      AutoHotkey

      install

      scoop install autohotkey1.1
      scoop install autohotkey
      

      Personal do

      mkdir "%USERPROFILE%/Usr/Source/autohotkey"
      cd "%USERPROFILE%/Usr/Source/autohotkey"
      git clone --depth=1 https://github.com/flyinclouds/KBLAutoSwitch
      git clone --depth=1 https://github.com/Gustice/AHK-KeyMap
      git clone --depth=1 https://github.com/sophice/ahk-keyboard-locker
      git clone --depth=1 https://github.com/ArturTkaczuk/toggle-screen-autohotkey
      git clone --depth=1 https://github.com/RichKMLS/ShortScript
      git clone --depth=1 https://github.com/fenchai23/QuickSwitch
      

      config

      QuickSwitch → MBtn_R → Always AutoSwitch (On)

      reference

      cross-reference

      mark

      cache

      resource

      mark

      cache

      ahk-keyboard-locker

      install

      git clone --depth=1 https://github.com/sophice/ahk-keyboard-locker
      cd ahk-keyboard-locker
      <path_to>\autohotkey1.1\AutoHotkeyU64.exe keyboard-locker.ahk
      

      config

      subl settings.ini
      
      ; Change hotkey
      shortcut=^!+k
      shortcut-hint=Ctrl+Alt+Shift+k
      

      KeyMap

      install

      git clone --depth=1 https://github.com/Gustice/AHK-KeyMap
      cd AHK-KeyMap
      <path_to>\autohotkey1.1\AutoHotkeyU64.exe KeyMap.ahk
      

      config

      subl KeyMap.ahk
      
      # Modify or add yours
      ::#>::→
      ::#<::←
      ::#^::↑
      ::#v::↓
      ::#<>::↔
      

      Go

      install

      # Arch
      sudo pacman -S go
      # Windows 10
      scoop install go122
      

      config

      1

      go env -w GO111MODULE=on
      go env -w GOPROXY=https://goproxy.cn,direct
      # go env -w GOPROXY=
      

      cross-reference

      cache


      1. Goproxy.cn

      goenv

      install

      git clone --depth=1 https://github.com/go-nv/goenv ~/.goenv
      sudo vim ~/.zshrc
      
      export GOENV_ROOT="$HOME/.goenv"
      export PATH="$GOENV_ROOT/bin:$PATH"
      eval "$(goenv init -)"
      
      source ~/.zshrc
      

      usage

      # wget https://go.dev/dl/go1.22.0.linux-arm64.tar.gz
      # mkdir -p ~/.goenv/cache
      # mv go1.22.0.linux-arm64.tar.gz ~/.goenv/cache/
      goenv install 1.22.0
      go version
      

      gvm

      install

      # Arch
      yay -S gvm-git
      # Windows 10
      scoop install gvm
      

      usage

      gvm install 1.21.0
      gvm use 1.21.0
      

      resource

      cache

      Godot

      reference

      resource

      cache

      LaTeX

      reference

      cross-reference

      mark

      cache

      asset

      resource

      later

      cache

      adjustbox

      The main feature of adjustbox is the general \adjustbox macro which extends the key=value interface of \includegraphics from the graphicx package, and applies it to general text content. It also provides further text/box modifications keys, macros and envionments. [ctan.org/pkg/adjustbox]

      adjustbox的主要功能是通用的\adjustbox宏,它扩展了graphicx包的\includegraphics的key=value接口,并将其应用于通用文本内容。它还提供进一步的文本/框修改关键字、宏和环境。 [ctan.org/pkg/adjustbox]

      quickstart

      \usepackage{adjustbox}
      
      \adjustbox{angle=90}{
        Rotating the text by 90 degrees
      }
      

      example

      demo.tex

      array

      The CTAN package “array” is an extended implementation of LaTeX’s standard array and tabular environments. It enhances the formatting options available for columns and provides more programmable format specifications. This means that users can customize column styles and layout in tables and arrays more flexibly than with the default LaTeX tools. It also addresses some technical issues by allowing fragile LaTeX commands to be used inside arrays and tables without needing additional protection. The package adds features such as the ability to adjust extra row height for better spacing, specify special fonts or formatting for individual columns directly in the preamble, and more refined control over table appearance. [perplexity.ai]

      CTAN包“array”是对LaTeX标准array和tabular环境的扩展实现。它增强了列的格式选项,并提供了更多可编程的格式规范。这意味着用户可以比使用默认的LaTeX工具更灵活地自定义表格和数组中的列样式和布局。它还通过允许在数组和表格中使用脆弱的LaTeX命令而无需额外保护来解决了一些技术问题。该包添加了诸如调整额外行高以获得更好间距、在前言中直接为单个列指定特殊字体或格式以及对表格外观更精细控制等功能。 [perplexity.ai]

      quickstart

      \usepackage{array}
      
      \begin{tabular}{|>{\centering}p{3cm}|>{\raggedleft}p{3cm}|}
          \hline
          Centered Text & Right-aligned Text \\
          \hline
          Sample 1 & Example 1 \\
          Sample 2 & Example 2 \\
          \hline
      \end{tabular}
      

      blowup

      This package only defines the user-level macro \blowUp, which can be used to scale all pages of a document up or down. It is similar to the TeX primitive \mag, but more accurate and user-friendly. \blowUp can be useful for creating posters from a normal sized document and for many other types of fine-tuning of a finished document (e.g., minor scaling changes and position of the pages). [ctan.org/pkg/blowup]

      该包仅定义了用户级宏\blowUp,可用于对文档的所有页面进行放大或缩小。它类似于TeX原始命令\mag,但更加准确和用户友好。\blowUp对于将正常大小的文档制作成海报,以及对已完成文档进行其他类型的微调(例如,微小的缩放变化和页面位置的调整)非常有用。 [ctan.org/pkg/blowup]

      quickstart

      \documentclass[letterpaper,twoside]{article}
      \usepackage{xcolor}
      \usepackage{blowup}
      \AddToHook{shipout/background}{
          \put(0,0){\textcolor{green!30}{\rule[-\paperheight]{\paperwidth}{\paperheight}}}
      }
      \blowUp{target=a4,pos=c}
      
      \begin{document}
      Letter-size document on A4-size paper
      \end{document}
      

      example

      blowup-ex1.tex

      requirement

      ccicons

      This package offers authors who want to publish their documents under a Creative Commons license an easy way to include the relevant icons in their documents. [ctan.org/pkg/ccicons]

      该包为希望将其文档以知识共享许可证发布的作者提供了一种简单的方式,以便在其文档中包含相关图标。 [ctan.org/pkg/ccicons]

      quickstart

      \usepackage{ccicons}
      
      \ccby \\
      \ccbysa \\
      \ccbynd \\
      \ccbync \\
      \ccbynceu \\
      \ccbyncjp \\
      \ccbyncsa \\
      \ccbyncsaeu \\
      \ccbyncsajp \\
      \ccbyncnd \\
      \ccbyncndeu \\
      \ccbyncndjp \\
      \cczero \\
      \ccpd
      

      cjk

      CJK is a macro package for LaTeX, providing simultaneous support for various Asian scripts in many encodings (including Unicode): Chinese (both traditional and simplified), Japanese, Korean and Thai.
      A special add-on feature is an interface to the Emacs editor (cjk-enc.el) which gives simultaneous, easy-to-use support to a bunch of other scripts in addition to the above — Cyrillic, Greek, Latin-based scripts, Russian and Vietnamese are supported. [ctan.org/pkg/cjk]

      CJK是一个LaTeX宏包,提供对多种亚洲文字的同时支持,涵盖多种编码(包括Unicode):中文(繁体和简体)、日文、韩文和泰文。
      一个特别的附加功能是与Emacs编辑器的接口(cjk-enc.el),除了上述文字外,还为其他多种文字提供了同时且易于使用的支持——支持西里尔字母、希腊字母、拉丁字母、俄文和越南文。 [ctan.org/pkg/cjk]

      quickstart

      \documentclass{article}
      \usepackage{CJKutf8}
      
      \begin{document}
      \begin{CJK}{UTF8}{gbsn}
      
      你好
      
      \end{CJK}
      \end{document}
      

      cleveref

      The cleveref package enhances LATEX’s cross-referencing features, allowing the format of cross-references to be determined automatically ac-cording to the “type” of cross-reference (equation, section, etc.) and the context in which the cross-reference is used. The formatting for each cross-reference type can be fully customised in the preamble of your document. In addition, cleveref can typeset cross-references to lists of multiple la-bels, automatically formatting them according to their types, sorting them, and compressing sequences of numerically consecutive labels. Again, the multiple-reference formatting is fully customisable.
      Normally, the latest version of the cleveref package is available via CTAN. Occasionally, slightly newer “pre-release” versions are available at www.dr-qubit.org/latex.php#cleveref a little before they make their way onto CTAN. [ctan.org/pkg/cleveref]

      cleveref包增强了LATEX的交叉引用功能,允许根据交叉引用的“类型”(方程、章节等)和交叉引用使用的上下文自动确定交叉引用的格式。每种交叉引用类型的格式可以在文档的前言中完全自定义。此外,cleveref可以排版多个标签的交叉引用,根据它们的类型自动格式化,排序,并压缩数值连续标签的序列。同样,多个引用的格式化也是完全可自定义的。
      通常,cleveref包的最新版本可以通过CTAN获得。偶尔,稍新一些的“预发布”版本会在www.dr-qubit.org/latex.php#cleveref上提供,稍早于它们上架CTAN。 [ctan.org/pkg/cleveref]

      quickstart

      \documentclass{article}
      \usepackage{amsmath}
      \usepackage{cleveref}
      
      \begin{document}
      
      We will refer to equation \cref{eq1} to demonstrate our approach.
      
      \begin{equation}
        \label{eq1}
        E = mc^2
      \end{equation}
      
      In \Cref{eq1}, we present a fundamental equation.
      
      \end{document}
      

      clrstrip

      This lightweight package provides the colorstrip environment, that places its contents into a full page width colour strip. [ctan.org/pkg/clrstrip]

      该轻量级包提供了colorstrip环境,将其内容放置在占据整页宽度的色条中。 [ctan.org/pkg/clrstrip]

      quickstart

      \usepackage{xcolor}
      \usepackage{clrstrip}
      
      \begin{colorstrip}{red!5}
      	\blindduck
      \end{colorstrip}
      

      colorblind

      In colorblind-safe documents, the contents are presented in a way that the same information is conveyed to readers regardless of a potential color vision deficiency. This package provides the tools necessary for colorblind-safe typesetting in LaTeX. It provides color schemes for a wide range of applications.
      The most commonly used schemes are qualitative schemes, providing easily distinguishable colors for use in graphics, but also for text coloring or highlighting. Additionally, diverging and sequential schemes are included which can be used for encoding quantitative information using colors. This package incorporates colorblind-safeness into the writing process, making it both less cumbersome and less error-prone. [ctan.org/pkg/colorblind]

      在色盲安全文档中,内容的呈现方式确保无论读者是否有潜在的色彩视觉缺陷,都能传达相同的信息。该包提供了在LaTeX中进行色盲安全排版所需的工具。它提供了适用于广泛应用的配色方案。
      最常用的方案是定性方案,提供易于区分的颜色,适用于图形,但也可用于文本着色或高亮。此外,包含了发散型和顺序型方案,可用于使用颜色编码定量信息。该包将色盲安全性纳入写作过程,使其既不繁琐又不容易出错。 [ctan.org/pkg/colorblind]

      quickstart

      \documentclass{article}
      
      \usepackage{xcolor}
      \usepackage{soul}
      \usepackage[keep-defaults, Tol, OkabeIto, pgf]{colorblind}
      
      \newcommand\colorblind{\textbf{colorblind}}
      \newcommand\hlc[2][T-Q-PH4]{{
          \colorlet{foo}{#1}
          \sethlcolor{foo}\hl{#2}}
      }
      
      \begin{document}
      
      \hlc[T-Q-B1]{blue} \\
      \hlc[T-Q-B2]{cyan} \\
      \hlc[T-Q-B3]{green} \\
      \hlc[T-Q-B4]{yellow} \\
      \hlc[T-Q-B5]{red} \\
      \hlc[T-Q-B6]{violet} \\
      \hlc[T-Q-B0]{gray}
      
      \end{document}
      

      example

      colorblind_doc.tex

      ctex

      ctex is a collection of macro packages and document classes for LaTeX Chinese typesetting. [ctan.org/pkg/ctex]

      ctex是一个用于LaTeX中文排版的宏包和文档类的集合。 [ctan.org/pkg/ctex]

      draftwatermark

      The draftwatermark package extends LATEX providing a means to add a watermark (typically textual and light gray, but possibly more sophisticated) on the pages of a document (either on every page, on the first page, or on selected pages). Typical usage may consist in writing words such as “DRAFT” or “CONFIDENTIAL” across the pages. The package may remind in some sense draftcopy by Dr. Juergen Vollmer, but its implementation is lighter (as the reduced code footprint shows) and does not rely on postscript specials, making the package fully compatible with pdfLATEX, XƎLATEX and LuaLATEX. Its feature set is somehow restricted because the emphasis is on the simplicity of the interface. For complex layouts, consider scrlayer.sty from the KOMA script bundle or directly using the new LATEX shipout hooks. [ctan.org/pkg/draftwatermark]

      draftwatermark包扩展了LATEX,提供了一种在文档页面上添加水印的方法(通常是文本形式,且为浅灰色,但也可能更加复杂),可以在每一页、首页或选定页面上使用。典型用法是在页面上写入诸如“DRAFT”或“CONFIDENTIAL”的字样。该软件包在某种意义上可以与Dr. Juergen Vollmer的draftcopy相提并论,但其实现更为轻便(如减少的代码占用所示),且不依赖于postscript特性,使得该软件包与pdfLATEX、XƎLATEX和LuaLATEX完全兼容。其功能集在某种程度上受到限制,因为重点是界面的简洁性。对于复杂的布局,请考虑使用KOMA脚本包中的scrlayer.sty或直接使用新的LATEX shipout钩子。 [ctan.org/pkg/draftwatermark]

      quickstart

      \documentclass{article}
      \usepackage[svgnames]{xcolor}
      \usepackage[firstpageonly, color={[gray]{0.9}},
      text=DRAFT\\COPY]{draftwatermark}
      \usepackage{mathptmx}
      \usepackage{lipsum}
      
      \title{Sample document for the draftwatermark package}
      \author{}
      
      \begin{document}
      \maketitle
      \section{One}
      \lipsum[1-3]
      \end{document}
      

      enumext

      This package provides enumerated list environments compatible with tagging PDF for creating “simple exercise sheets” along with “multiple choice questions”, storing the “answers” to these in memory using the multicol package. [ctan.org/pkg/enumext]

      该包提供了与PDF标记兼容的编号列表环境,用于创建“简单练习表”和“多项选择题”,并使用multicol包将这些题目的“答案”存储在内存中。 [ctan.org/pkg/enumext]

      quickstart

      \usepackage{enumext}
      
      \begin{enumext*}[widest=10,columns=4]
      	\item The first
      	\item* The second
      	\item The third
      	\item The fourth
      	\item(3)* The fifth item is way too long for this and needs three columns
      	\item The sixth
      	\item The seventh
      	\item(2)[X] The eighth item is way too long for this and needs two columns
      	(\the\itemwidth)
      	\item The ninth
      	\item[Z] The tenth (\the\itemwidth)
      \end{enumext*}
      

      fbb

      The package provides a Bembo-like font package based on Cardo but with many modifications, adding Bold Italic, small caps in all styles, six figure choices in all styles, updated kerning tables, added figure tables and corrected f-ligatures. Both OpenType and Adobe Type 1 versions are provided; all necessary support files are provided.
      The font works well with newtxmath’s libertine option. [ctan.org/pkg/fbb]

      该包提供了一种类似于Bembo的字体包,基于Cardo,但进行了许多修改,增加了粗斜体、所有样式的小型大写字母、所有样式的六种数字选择、更新的字距表、添加的数字表以及修正的f连字。提供了OpenType和Adobe Type 1版本;所有必要的支持文件均已提供。
      该字体与newtxmath的libertine选项兼容良好。 [ctan.org/pkg/fbb]

      quickstart

      \usepackage{fbb}
      
      \begin{document}
      \title{Sample Document}
      \author{Your Name}
      \date{\today}
      \maketitle
      This text is in the fbb font, which resembles Bembo.
      \end{docuemnt}
      

      fontawesome7

      This package provides LaTeX support for the included “Font Awesome 7 Free” icon set. These icons were designed by Fort Awesome and released under the SIL OFL 1.1 license. The commercial “Pro” version has only preliminary alpha support for now, if it is installed and XeLaTeX or LuaLaTeX is used. For this font you need a paid license, for more information visit Fort Awesome Pro. More information about Font Awesome is available at Fort Awesome.
      To use an icon after the package is loaded, just enter the name of the icon in CamelCase prefixed with \fa, for example \faAddressBook for the address-book icon.
      The TeX files are derived from the Font Awesome 5package, are maintained by Daniel Nagel and are released under the LaTeX Project Public License version 1.3c. All included fonts are provided by Fort Awesome under the SIL OFL 1.1 license This package is not an official Fort Awesome project. [ctan.org/pkg/fontawesome7]

      该包为包含的“Font Awesome 7 Free”图标集提供LaTeX支持。这些图标由Fort Awesome设计,并根据SIL OFL 1.1许可证发布。商业“Pro”版本目前仅提供初步的alpha支持,如果安装了它,并使用XeLaTeX或LuaLaTeX。对于该字体,您需要支付许可证,更多信息请访问Fort Awesome Pro。关于Font Awesome的更多信息可在Fort Awesome网站上找到。
      加载包后,要使用图标,只需输入图标名称,使用CamelCase并以\fa为前缀,例如\faAddressBook用于地址簿图标。
      TeX文件源自Font Awesome 5包,由Daniel Nagel维护,并根据LaTeX项目公共许可证第1.3c版发布。所有包含的字体均由Fort Awesome根据SIL OFL 1.1许可证提供。该包不是Fort Awesome的官方项目。 [ctan.org/pkg/fontawesome7]

      quickstart

      \usepackage{fontawesome7}
      
      Multiple versions of the file icon:
      	\faFile~
      	\faFile[solid]~
      	\faFile[regular]~.\\
      Alternative syntax:
      	\faIcon{file}~
      	\faIcon[solid]{file}~
      	\faIcon[regular]{file}~.
      

      example

      fontawesome6.tex

      Bible de Genève 1564

      install

      fonts\* can also be named:

      EB Garamond 08 Italic.ttf
      EB Garamond 08 Regular.ttf
      EB Garamond 12 AllSC.ttf
      EB Garamond 12 Bold.ttf
      EB Garamond 12 Italic.ttf
      EB Garamond 12 Regular.ttf
      EB Garamond Initials.ttf
      EB Garamond Initials Fill1.ttf
      EB Garamond Initials Fill2.ttf
      EB Garamond SC 08 Regular.ttf
      EB Garamond SC 12 Regular.ttf
      

      geometry

      The package provides an easy and flexible user interface to customize page layout, implementing auto-centering and auto-balancing mechanisms so that the users have only to give the least description for the page layout. For example, if you want to set each margin 2cm without header space, what you need is just \usepackage[margin=2cm,nohead]{geometry}.
      The package knows about all the standard paper sizes, so that the user need not know what the nominal ‘real’ dimensions of the paper are, just its standard name (such as a4, letter, etc.).
      An important feature is the package’s ability to communicate the paper size it’s set up to the output (whether via DVI \specials or via direct interaction with pdf(La)TeX). [ctan.org/pkg/geometry]

      该包提供了一个简单灵活的用户界面,用于自定义页面布局,采用自动居中和自动平衡机制,使用户只需提供最少的页面布局描述即可。例如,如果你想将每个边距设置为2厘米且不留头部空间,你只需使用\usepackage[margin=2cm,nohead]{geometry}
      该包了解所有标准纸张尺寸,因此用户无需知道纸张的名义“真实”尺寸,只需知道其标准名称(如a4、letter等)。
      一个重要的特性是该包能够将其设置的纸张尺寸传达给输出(无论是通过DVI的\specials还是通过与pdf(La)TeX的直接交互)。 [ctan.org/pkg/geometry]

      quickstart

      \usepackage[margin=2em]{geometry}
      

      geometry.dtx

      href-ul

      This LaTeX package makes hyperlinks underscored, just like on the web. The package uses hyperref and ulem. [ctan.org/pkg/href-ul]

      该LaTeX包使超链接带下划线,就像在网页上一样。该包使用hyperref和ulem。 [ctan.org/pkg/href-ul]

      quickstart

      \pagestyle{empty}
      \usepackage{href-ul}
      
      Go to \href{https://www.ctan.org}{CTAN}!
      

      invoice2

      Typeset invoices with automatic VAT and calculation of totals. Supports internationalization, invoices are typeset with booktabs for readability. Does not support separate projects per invoice.
      Can be used as a replacement for invoice in most cases. [ctan.org/pkg/invoice2]

      自动排版发票,包括增值税的自动计算和总额计算。支持国际化,发票使用booktabs排版以提高可读性。不支持每张发票单独的项目。
      在大多数情况下可以作为发票的替代品使用。 [ctan.org/pkg/invoice2]

      quickstart

      \usepackage{invoice2}
      
      \begin{invoice}[currency-symbol={CHY}, currency-in-header]
      \invoicesingleitem{Ignition!}{4087.99}
      \invoicesingleitem{The Art of Computer Programming 1--4}{162.99}
      \invoicesingleitem{The TeXbook}{55.69}
      \end{invoice}
      

      kdpcover

      The problem this class solves is the necessity to change the size of the cover PDF according to the number of pages in the book — the bigger the book, the larger the spine of the book must be. The provided class makes the necessary calculations on-the-fly, using the qpdf tool. Obviously, you need to have it installed. Also, you must run pdflatex with the –shell-escape option, in order to allow LaTeX to run qpdf. [ctan.org/pkg/kdpcover]

      该类解决的问题是根据书籍的页数更改封面PDF的大小——书籍越大,书脊的宽度就必须越大。提供的类实时进行必要的计算,使用qpdf工具。显然,你需要安装它。此外,你必须使用--shell-escape选项运行pdflatex,以允许LaTeX运行qpdf。 [ctan.org/pkg/kdpcover]

      quickstart

      \documentclass[pages=200,6x9]{kdpcover}
      
      \begin{document}
      \putSpine{kdpcover, a LaTeX class for KDP books}
      \putVolume{1}
      \putVersion{0.6.1}
      \putPrice{\$0.00}
      \putCopyright{\the\year}{Yegor Bugayenko}
      \putTitle{kdpcover}
      \putAuthor{Yegor Bugayenko}
      \putTLDR{This book will tell you
      	an interesting story!}
      % Download this from https://mirrors.ctan.org/macros/latex/contrib/kdpcover/cactus.pdf
      \putPicture{cactus.pdf}
      
      \end{document}
      

      latexindent

      latexindent.pl is a Perl script that indents .tex (and other) files according to an indentation scheme that the user can modify to suit their taste. Environments, including those with alignment delimiters (such as tabular), and commands, including those that can split braces and brackets across lines, are usually handled correctly by the script. Options for verbatim-like environments and commands, together with indentation after headings (such as chapter, section, etc) are also available. The script also has the ability to modify line breaks, and to add comment symbols and blank lines; furthermore, it permits string or regex-based substitutions. All user options are customisable via the switches and the YAML interface. [ctan.org/pkg/latexindent]

      latexindent.pl是一个Perl脚本,用于根据用户可以修改的缩进方案对.tex(和其他)文件进行缩进。该脚本通常能够正确处理环境,包括带对齐分隔符的环境(如tabular),以及可以跨行拆分大括号和中括号的命令。还提供了对类verbatim环境和命令的选项,以及在标题(如章节、节等)后进行缩进的功能。该脚本还具有修改换行符的能力,可以添加注释符号和空行;此外,它还允许基于字符串或正则表达式的替换。所有用户选项都可以通过开关和YAML接口进行自定义。 [ctan.org/pkg/latexindent]

      make4ht

      make4ht is a build system for TEX4ht, TEX to XML converter. It provides a command line tool that drives the conversion process. It also provides a library that can be used to create customized conversion tools. An example of such a tool is tex4ebook, a tool for conversion from TEX to ePub and other e-book formats. [ctan.org/pkg/make4ht]

      make4ht是一个用于TEX4ht的构建系统,TEX到XML的转换器。它提供了一个命令行工具来驱动转换过程。它还提供了一个库,可以用来创建自定义的转换工具。这样的工具的一个例子是tex4ebook,它是用于将TEX转换为ePub及其他电子书格式的工具。 [ctan.org/pkg/make4ht]

      menukeys

      This package is designed to format menu sequences, paths and keyboard shortcuts automatically. There are several predefined styles and one can define one’s own styles in a flexible way. [ctan.org/pkg/menukeys]

      该包旨在自动格式化菜单序列、路径和键盘快捷键。它提供了几种预定义的样式,并且用户可以以灵活的方式定义自己的样式。 [ctan.org/pkg/menukeys]

      quickstart

      \usepackage{menukeys}
      
      \menu[,]{Extras,Settings,{Units, rulers and origin}}
      

      microtype

      The package provides a LaTeX interface to the micro-typographic extensions that were introduced by pdfTeX and have since also propagated to XeTeX and LuaTeX: most prominently, character protrusion and font expansion, furthermore the adjustment of interword spacing and additional kerning, as well as hyphenatable letterspacing (tracking) and the possibility to disable all or selected ligatures.
      These features may be applied to customisable sets of fonts, and all micro-typographic aspects of the fonts can be configured in a straight-forward and flexible way. Settings for various fonts are provided.
      Note that character protrusion requires pdfTeX, LuaTeX, or XeTeX. Font expansion works with pdfTeX or LuaTeX. The package will by default enable protrusion and expansion if they can safely be assumed to work. Disabling ligatures requires pdfTeX or LuaTeX, while the adjustment of interword spacing and of kerning only works with pdfTeX. Letterspacing is available with pdfTeX, LuaTeX or XeTeX.
      The alternative package ‘letterspace’, which also works with plain TeX, provides the user commands for letterspacing only, omitting support for all other extensions. [ctan.org/pkg/microtype]

      该包提供了一个LaTeX接口,用于微排版扩展,这些扩展是由pdfTeX引入的,后来也传播到了XeTeX和LuaTeX:最显著的包括字符突出、字体扩展,此外还有单词间距的调整和额外的字距调节,以及可断字的字母间距(跟踪)和禁用所有或选定连字的可能性。
      这些功能可以应用于可定制的字体集,所有微排版方面的字体设置都可以以简单和灵活的方式进行配置。提供了各种字体的设置。
      请注意,字符突出需要pdfTeX、LuaTeX或XeTeX。字体扩展可以在pdfTeX或LuaTeX下工作。该包默认启用突出和扩展功能,如果可以安全地假定它们可以正常工作。禁用连字需要pdfTeX或LuaTeX,而单词间距和字距的调整仅在pdfTeX下有效。字母间距在pdfTeX、LuaTeX或XeTeX下可用。
      替代包“letterspace”也支持plain TeX,仅提供字母间距的用户命令,省略对所有其他扩展的支持。 [ctan.org/pkg/microtype]

      quickstart

      \documentclass{article}
      \usepackage{lipsum}
      \usepackage[protrusion=true,expansion]{microtype}}
      
      \begin{document}
      \lipsum[1-2]
      \end{document}
      

      multicolrule

      This package lets you customize the appearance of the vertical rule that appears between columns of multicolumn text. It is primarily intended to work with the multicol package, hence its name, but also supports the twocolumn option and \twocolumn macro provided by the standard classes (and related classes such as the KOMA-Script equivalents).
      The package depends on expl3 and xparse. [ctan.org/pkg/multicolrule]

      该包允许您自定义在多列文本之间出现的垂直规则的外观。它主要旨在与multicol包配合使用,因此得名,但也支持标准类提供的twocolumn选项和\twocolumn宏(以及KOMA-Script等相关类的等效项)。
      该包依赖于expl3和xparse。 [ctan.org/pkg/multicolrule]

      quickstart

      \documentclass{article}
      \usepackage{lipsum}
      \usepackage[tikz]{multicolrule}[2019/10/01]
      
      \begin{document}
      \begin{multicols}{2}[Default]
      \lipsum[1-2]
      \end{multicols}
      \end{document}
      

      oPlotSymbl

      This package is named oPlotSymbl and it includes symbols, which are not easily available. Especially, these symbols are used in scientific plots, but the potential user is allowed to use them in other ways.
      This package uses TikZ and xcolor. [ctan.org/pkg/oplotsymbl]

      该包名为oPlotSymbl,包含一些不易获得的符号。这些符号主要用于科学绘图,但潜在用户可以以其他方式使用它们。
      该包使用TikZ和xcolor。 [ctan.org/pkg/oplotsymbl]

      quickstart

      \usepackage{oplotsymbl}
      
      Some symbols:
      	\circlet~
      	\circletfill~
      

      pagelayout

      The pagelayout class enables you to layout pages declaratively using simple macros for pages, covers, grids, templates, text, and graphics to create graphic rich, perfectly typeset, and print ready PDFs.
      The integration of Inkscape allows you to create box shadows.
      The integration of ImageMagick allows you to configure compression and sharpening for bitmap graphics to export web, print or preview versions of your document. Parallelized image optimization, caching, and a draft mode enable fast PDF creation and a responsive workflow, even for large documents with lots of photos and graphics.
      The pagelayout class also integrates the PGF/TikZ and tcolorbox LaTeX packages. [ctan.org/pkg/pagelayout]

      pagelayout类使您能够使用简单的宏以声明方式布局页面,包括页面、封面、网格、模板、文本和图形,以创建图形丰富、排版完美且适合打印的PDF。
      Inkscape的集成允许您创建框阴影。
      ImageMagick的集成允许您配置位图图形的压缩和锐化,以导出文档的网页、打印或预览版本。并行图像优化、缓存和草稿模式使得即使对于包含大量照片和图形的大型文档也能快速创建PDF并实现高效的工作流程。
      pagelayout类还集成了PGF/TikZ和tcolorbox LaTeX包。 [ctan.org/pkg/pagelayout]

      quickstart

      \documentclass[draft,grid,graphpaper,preflight,optimize={density=600}]{pagelayout}
      \usepackage{microtype}
      
      \pagewidth=5.5cm
      \pageheight=4cm
      \margin=5mm
      \gutter=5mm
      \bleed=2mm
      \setpagecolor{white}
      
      \begin{document}
        \newtemplate{my template}{
          \setgrid{
            {[2]{3!}{2!}}
          }
          \placeholder{0 0 1 1}
          \placeholder{0 1 1 2}
        }
        \template{my template}{}
      
        \nogrid
        \newborder{my border}{width = 1mm, color = white, radius = 5mm}
        \newshadow{my shadow}{size = 7}
        \template{my template}{
          \graphic[
            scale=1.05,
            hpos=0,
            vpos=0.3,
            shadow=my shadow,
            border=my border,
            border radius=0mm
      			% A exampleImage.jpg here.
      			]{exampleImage}
        }
      \end{document}
      

      parnotes

      The parnotes package adds a new note type, \parnote. Parnotes are set as normal, running paragraphs and may be placed two ways:

      • Automatically, at the end of the paragraph
      • Manually, using the \parnotes command
        This package was inspired by a question on the TEX Stack Exchange3 that asked for notes which are placeable immediately after the paragraph in which they are mentioned, to avoid the interruption posed by footnotes. [ctan.org/pkg/parnotes]

      parnotes包添加了一种新的注释类型\parnote。parnotes作为正常的运行段落设置,可以通过两种方式放置:

      • 自动放置在段落末尾
      • 手动放置,使用\parnotes命令
        该包的灵感来源于TEX Stack Exchange上的一个问题,该问题询问如何将注释放在提到它们的段落后,以避免脚注带来的干扰。 [ctan.org/pkg/parnotes]

      quickstart

      \usepackage{parnotes}
      
      Text\parnote{``Placing footnotes or endnotes at the end of the current paragraph''} \\
      -
      Text\parnote{``Placing footnotes or endnotes at the end of the current paragraph''}
      \parnotes
      

      example

      parnotes.tex

      pdfprivacy

      Creating pdfs with pdfLaTeX populates several pdf meta-data fields such as date/time of creation/modification, information about the LaTeX installation (e.g., pdfTeX version), and the relative paths of included pdfs.
      The pdfprivacy package provides support for emptying several of these pdf meta-data fields as well as suppressing some pdfTeX meta-data entries in the resulting pdf. [ctan.org/pkg/pdfprivacy]

      使用pdfLaTeX创建pdf文件会填充多个pdf元数据字段,例如创建/修改的日期/时间、关于LaTeX安装的信息(例如pdfTeX版本)以及包含的pdf的相对路径。
      pdfprivacy包提供了对这些pdf元数据字段进行清空的支持,以及在生成的pdf中抑制一些pdfTeX元数据条目的功能。 [ctan.org/pkg/pdfprivacy]

      phfextendedabstract

      Here are the main features of the phfextendedabstract class:

      • The class phfextendedabstract loads the revtex4-2 class, so you can directly use REVTEX’s features such as author affiliations, etc.
      • Only two sectioning commands are enabled: \section and \paragraph. Both have run-in headings. If you find yourself needing additional sectioning levels, it might be that your extended abstract is too detailed and you might want to think about how to keep it at a higher level. It might also be that phfextendedabstract is too limited for your needs. By default, section and paragraphs have “decorations” (by default a symbol in the margin) to guide the reader through the overall high-level structure of the document. (Disable them with the noheadingdecorations class option.)
      • You can easily scale all vertical spacing dimensions (section and paragraph spacing, vertical space around theorems and list environments, etc.) by a common factor with a class option. Do you have those extra two lines that make you exceed your 3-page limit? Try squeezing everything together with a class option like compressverticalspacing=0.7.
      • The phfnote package is loaded in order to provide a set of default LATEX packages and set up hyperlinks. A generous default set of standard LaTeX packages are loaded, including caption and enumitem; see phfnote’s documentation for the option pkgset=extended. You are expected to include \usepackage{hyperref} somewhere in your preamble. We deliberately don’t include hyperref when loading the class in order to give you greater control of package loading order (most packages you might want to use must be loaded before hyperref).
      • The page margins are tweaked with the geometry package. (Simply call \geometry{…} if you’d like to further change them. Refer to the geometry package’s documentation.)
      • Lists, i.e. the itemize and enumerate environments, are customized using the enumitem package so that they take up less space. You also get a enumerate* environment that typesets its items in-line, in a single paragraph. (Note that this customization won’t work if you choose to load a package set via a pkgset= option that doesn’t include enumitem.)
      • By default we load the phfthm package and set a customized theorem style so that it stands out but also so that it contrasts well with the section and paragraph headings. [ctan.org/pkg/phfextendedabstract]

      以下是phfextendedabstract类的主要特点:

      • 类phfextendedabstract加载了revtex4-2类,因此您可以直接使用REVTEX的功能,如作者附属关系等。
      • 仅启用两个分级命令:\section和\paragraph。两个命令都有行内标题。如果您发现自己需要额外的分级层次,可能是因为您的扩展摘要过于详细,您可能需要考虑如何将其保持在更高的层次。也可能是phfextendedabstract对您的需求过于有限。默认情况下,章节和段落有“装饰”(默认为边缘的一个符号),以引导读者了解文档的整体高层结构。(使用noheadingdecorations类选项禁用它们。)
      • 您可以使用类选项轻松缩放所有垂直间距尺寸(章节和段落间距、定理和列表环境周围的垂直间距等),以一个共同的因子。如果您有额外的两行使您超出了3页限制,可以尝试使用类似compressverticalspacing=0.7的类选项将所有内容压缩在一起。
      • 加载phfnote包以提供一组默认的LATEX包并设置超链接。加载了一组慷慨的标准LaTeX包,包括caption和enumitem;有关选项pkgset=extended的详细信息,请参见phfnote的文档。您需要在导言区某处包含\usepackage{hyperref}。我们故意不在加载类时包含hyperref,以便让您更好地控制包的加载顺序(大多数您可能想使用的包必须在hyperref之前加载)。
      • 页面边距使用geometry包进行了调整。(如果您想进一步更改它们,只需调用\geometry{…}。参见geometry包的文档。)
      • 列表,即itemize和enumerate环境,使用enumitem包进行了自定义,以减少空间。您还可以获得一个enumerate*环境,将其项目排版为内联,呈现在一个段落中。(注意,如果您选择通过不包括enumitem的pkgset=选项加载包集,则此自定义将不起作用。)
      • 默认情况下,我们加载phfthm包并设置自定义的定理样式,以便其突出而与章节和段落标题形成良好的对比。 [ctan.org/pkg/phfextendedabstract]

      quickstart

      % Bug here
      \documentclass[papertype=a4paper]{phfextendedabstract}
      \usepackage{hyperref}
      
      \begin{document}
      \title{Title goes here}
      \author{Author 1}
      \author{Author 2}
      \maketitle
      \section{Introduction.}
      Lorem ipsum ...
      \section{Results.}
      We had some cool results about
      \begin{enumerate*}
      \item a first result,
      \item a second result,
      \item a final result.
      \end{enumerate*}
      \paragraph{First result.}
      Here’s a first result ...
      \paragraph{Second result.}
      Here’s another result ...
      ...
      \end{document}
      

      polyglossia

      This package provides an alternative to Babel for users of XeLaTeX and LuaLaTeX. This version includes support for over 80 different languages, some of which in different regional or national varieties, or using a different writing system.
      Polyglossia makes it possible to automate the following tasks:

      • Loading the appropriate hyphenation patterns.
      • Setting the script and language tags of the current font (if possible and available), using the package fontspec.
      • Switching to a font assigned by the user to a particular script or language.
      • Adjusting some typographical conventions in function of the current language (such as afterindent, frenchindent, spaces before or after punctuation marks, etc.).
      • Redefining the document strings (like “chapter”, “figure”, “bibliography”).
      • Adapting the formatting of dates (for non-gregorian calendars via external packages bundled with polyglossia: currently the Hebrew, Islamic and Farsi calendars are supported).
      • For languages that have their own numeration system, modifying the formatting of numbers appropriately.
      • Ensuring the proper directionality if the document contains languages written from right to left (via the packages bidi and luabidi, available separately). [ctan.org/pkg/polyglossia]

      该包为XeLaTeX和LuaLaTeX的用户提供了对Babel的替代方案。此版本支持超过80种不同语言,其中一些语言有不同的地区或国家变体,或使用不同的书写系统。
      Polyglossia使得自动化以下任务成为可能:

      • 加载适当的断字模式。
      • 设置当前字体的脚本和语言标签(如果可能且可用),使用包fontspec。
      • 切换到用户为特定脚本或语言分配的字体。
      • 根据当前语言调整某些排版惯例(比如缩进后的空格、法语缩进、标点符号前后的空格等)。
      • 重新定义文档字符串(如“章节”、“图”、“参考文献”)。
      • 调整日期的格式(针对非公历的日历,通过与polyglossia捆绑的外部包:目前支持希伯来历、伊斯兰历和法尔斯历)。
      • 对于有自己数字系统的语言,适当修改数字的格式。
      • 确保文档的正确方向性,如果文档包含从右到左书写的语言(通过分别提供的包bidi和luabidi)。 [ctan.org/pkg/polyglossia]

      quickstart

      % !TeX program = xelatex
      
      \documentclass{article}
      \usepackage{fontspec}
      \usepackage{polyglossia}
      \setdefaultlanguage{chinese}
      \setotherlanguage{english}
      % Package noto, notoCJKsc
      \setmainfont{Noto Serif CJK SC}[Script=CJK]
      \newfontfamily\chinesefont{Noto Serif CJK SC}[Script=CJK]
      % Package arphic-ttf
      %\setmainfont{bkai00mp.ttf}[Script=CJK]% ZenKai-Medium
      %\setmainfont{bsmi00lp.ttf}[Script=CJK]% ShanHeiSun-Light
      %\setmainfont{gbsn00lp.ttf}[Script=CJK]% BousungEG-Light-GB
      %\setmainfont{gkai00mp.ttf}[Script=CJK]% GBZenKai-Medium
      \begin{document}
      \parindent0em
      
      \begin{center}
        \abstractname
      \end{center}
      \begin{english}
      This package provides an alternative to Babel for users of XeLaTeX and LuaLaTeX. This version includes support for over 80 different languages, some of which in different regional or national varieties, or using a different writing system.
      \footnote{%
        This is a footnote.}
      
      This is today: \today
      \end{english}
      
      \section{(简体中文, Simplified Chinese)}
      
      该软件包为使用XeLaTeX和LuaLaTeX的用户提供了Babel的替代方案。此版本支持超过80种不同的语言,其中一些具有不同的区域或国家变体,或使用不同的书写系统。
      
      \today
      
      localnumeral: \localnumeral{1863}, chinesenumeral: \chinesenumeral{1863}
      
      \renewfontfamily\chinesefont{Noto Serif CJK TC}[Script=CJK]
      \begin{chinese}[variant=traditional,numerals=chinese]
      
      \section{(繁體中文, Traditional Chinese)}
      
      該軟體包為使用XeLaTeX和LuaLaTeX的用戶提供了Babel的替代方案。此版本支持超過80種不同的語言,其中一些具有不同的區域或國家變體,或使用不同的書寫系統。
      
      \today
      
      localnumeral: \localnumeral{1863}, chinesenumeral: \chinesenumeral{1863}
      
      \end{chinese}
      
      \section{numeral}
      \begin{english}
      
      numerals=arabic: \textchinese[numerals=arabic]{\localnumeral{1863}, \chinesenumeral{1863}}
      
      numerals=chinese: \textchinese[numerals=chinese]{\localnumeral{1863}, \chinesenumeral{1863}}
      
      \end{english}
      
      \end{document}
      

      Q-and-A

      Q-and-A is a LaTeX document class for you to typeset Q&A-style conversation. It turns simple pure text Q&A dialog into a carefully designed document.
      Notably, it features two themes, ChatGPT-light and ChatGPT-dark, enabling you to format your Q&A dialog in a way that closely resembles the interface of ChatGPT. [ctan.org/pkg/q-and-a]

      Q-and-A是一个LaTeX文档类,旨在帮助您排版问答式对话。它将简单的纯文本问答对话转换为精心设计的文档。
      特别值得注意的是,它具有两种主题,ChatGPT-light和ChatGPT-dark,允许您以接近ChatGPT界面的方式格式化您的问答对话。 [ctan.org/pkg/q-and-a]

      quickstart

      \documentclass[%11pt,
        numbered answer,
        numbered question,
        % scroll,
      ]{Q-and-A}
      \geometry{paperwidth=12cm, paperheight=8.2cm}
      
      \begin{document}
      Q:
        What is `...`?
      
      A:
        A `...` is a `...`. It has the following features:
      
        [Feature A]
          [*Aspect one] Firstly, ...
          [*Aspect two] Secondly, ...
      
        [Feature B]
          It also ...
      
      Q:
        Can you provide some examples for `...`?
      
      A:
        Certainly. There are many types of `...`, for example:
          [*] *emphasized*
          [*] **bold**
          [*] ***bold and emphasized***
      \end{document}
      

      rerunfilecheck

      The package provides additional rerun warnings if some auxiliary files have changed. It is based on MD5 checksum, provided by pdfTEX. [ctan.org/pkg/rerunfilecheck]

      该包提供额外的重新运行警告,如果某些辅助文件发生了更改。它基于pdfTEX提供的MD5校验和。 [ctan.org/pkg/rerunfilecheck]

      responsive

      Responsive design aims to display text and other design elements well on variety of outputs, including electronic devices or various paper sizes. It originated on the Web, using Cascading Style Sheets to change design elements.
      This package tries to achieve similar results with LaTeX. The main aim is to support the output of multiple editions of one document with readable font sizes regardless of the physical size of the produced PDF, from smartphones or e-ink readers to printed A4 pages. [ctan.org/pkg/responsive]

      响应式设计旨在使文本和其他设计元素在多种输出设备上表现良好,包括电子设备或各种纸张大小。它起源于网络,使用层叠样式表来改变设计元素。
      该包试图在LaTeX中实现类似的效果。其主要目的是支持同一文档的多个版本的输出,确保无论生成的PDF的物理大小如何,字体大小都可读,从智能手机或电子书阅读器到打印的A4页面。 [ctan.org/pkg/responsive]

      quickstart

      \documentclass{article}
      \usepackage{lipsum}
      \usepackage{responsive}
      
      \begin{document}
      \noindent
      \fbox{
      \begin{minipage}{8cm}
        \setsizes[38]{28}
        \huge huge \\ 
        \large large \\
        \normalsize normal \\
        \scriptsize scriptsize
      \end{minipage}
      }
      \fbox{
      \begin{minipage}{4cm}
        \mediaquery{min-textwidth=3.9cm}{
          media query matched
          \ResponsiveSetup{scale=tetratonic}
          \setsizes[38]{28}
        }{media query not matched}
        \huge huge \\
        \large large \\
        \normalsize normal \\
        \scriptsize scriptsize
      \end{minipage}
      }
      \noindent
      \fbox{
      \begin{minipage}{4cm}
        \ResponsiveSetup{scale=tritonic}
        \setsizes[38]{28}
        \huge huge \\
        \large large \\
        \normalsize normal \\
        \scriptsize scriptsize
      \end{minipage}
      }
      \fbox{
      \begin{minipage}{4cm}
        \ResponsiveSetup{scale=heptatonic}
        \setsizes[38]{28}
        \huge huge \\
        \large large \\
        \normalsize normal \\
        \scriptsize scriptsize
      \end{minipage}
      }
      \fbox{
      \begin{minipage}{4cm}
        \ResponsiveSetup{number=10,ratio=6}
        \setsizes[38]{28}
        \huge huge \\
        \large large \\
        \normalsize normal \\
        \scriptsize scriptsize
      \end{minipage}
      }
      \end{document}
      

      sectionbreak

      This package provides LaTeX support for section breaks, used mainly in fiction books to signal changes in a story, like changes in time, location, etc. It supports the asterism symbol, text content, or custom macros as the section break mark symbol. [ctan.org/pkg/sectionbreak]

      该包为LaTeX提供了章节分隔符的支持,主要用于小说书籍中以标示故事中的变更,如时间、地点等的变化。它支持星形符号、文本内容或自定义宏作为章节分隔符标记符号。 [ctan.org/pkg/sectionbreak]

      quickstart

      \documentclass{article}
      \usepackage[asterism]{sectionbreak}
      
      \begin{document}
      Section separated by three exclamation marks.
      \sectionbreak[!!!]
      Section separated by asterism section mark requested in \texttt{\textbackslash usepackage}.
      \sectionbreak
      Section separated by a rule.
      \sectionbreakmark{\rule{10em}{3pt}}
      \sectionbreak
      \end{document}
      

      semesterplanner

      This package encapsules several useful environments for a printable semester plan. It includes a timetable (which is using the schedule-Package) as well as appointments, deadlines and exams. While creating my own plan I thought that it could come handy for somebody else, so I extracted the code into a LATEX-package. This package requires color, tikz, schedule and fontawesome. Furthermore documents need to be compiled with LuaLaTeX. [ctan.org/pkg/semesterplanner]

      该包封装了多个用于可打印学期计划的有用环境。它包括一个时间表(使用schedule包)以及约会、截止日期和考试。在创建我自己的计划时,我想这可能对其他人有用,因此我将代码提取到一个LATEX包中。该包需要color、tikz、schedule和fontawesome。此外,文档需要使用LuaLaTeX编译。 [ctan.org/pkg/semesterplanner]

      quickstart

      \documentclass{article}
      \usepackage{semesterplanner}
      
      \begin{document}
      \begin{timetable}
        \lecture    {Software\\Engineering} {-}    {\zoom}  {M}
        {08:30-10:00} {\phigh}
        \tutorial   {Numerik I}             {\tbd} {\teams} {M}  {16:15-17:45} {\pmid}
        \officehour {Software\\Engineering} {-}    {\zoom}  {T}
        {08:30-10:00} {\phigh}
        \lecture    {Numerik I}             {-}    {\teams} {T}  {10:15-11:45} {\pmid}
        \meeting    {Tutor Meeting}         {-}    {\teams} {T}
        {14:00-15:00} {\phigh}
        \lecture    {Numerik I}             {-}    {\teams} {Th} {14:15-15:45} {\pmid}
        \tutorial   {MfN I}                 {-}    {\teams} {F}  {10:15-11:45} {}
        \seminar    {Machine Learning}      {-}    {\zoom}  {F}
        {12:15-13:45} {\pmandatory}
      \end{timetable}
      \end{document}
      

      semesterplannerLua

      This package provides a mean to easily print a timetable e.g. for a semesterplan. The reason for this package to exist is that I wanted to reimplement https:// github.com/nlschn/semesterplanner/ with printing the timetable with tikz only (which is more easily to be modified) and with the ability of making entries spanning only a fraction of the column (for showing simultanious events). Documents using this package need to be compiled with LuaLaTeX. The package requires xcolor, fontawesome, tikz (and pgfkeys). [ctan.org/pkg/semesterplannerlua]

      该包提供了一种简单的方式来打印时间表,例如学期计划。此包的存在原因是我想重新实现https://github.com/nlschn/semesterplanner/,仅使用tikz打印时间表(这更易于修改),并能够创建仅跨越列的一部分的条目(用于显示同时发生的事件)。使用此包的文档需要使用LuaLaTeX编译。该包需要xcolor、fontawesome、tikz(和pgfkeys)。 [ctan.org/pkg/semesterplannerlua]

      sidenotesplus

      Sidenotesplus is a comprehensive package for placing labeled or referenced notes, temporary alerts, bibliography references, figures and tables into the margin. Marginals can be either floated or at fixed positions relative to the text. Twoside symmetry is preserved. For BibLaTeX users, macros for side references are provided.
      Three margin styles are provided. Two-page symmetric layouts either as (i) Ragged outer with note reverences in the margin separator or (ii) justified with last line ragged outer. And (iii) a classic look, justified with last line ragged right and note reference to the left of the note, but two-page symmetry is lost.
      The command \sidenote mimics the \footnote command and provides labelled (numbers, alphabetic, roman) references. However, un-numbered and custom symbols can also be specified.
      Temporary sidealerts are rendered only if the package option alerton is specified. Alerts are useful as to do reminders during document development.
      Furthermore, captions for figures and tables can also be placed into margin. Also, full width environments for figures, tables and text are provided. The text environment can be partially widened, suitable if that extra space for an equation is required. [ctan.org/pkg/sidenotesplus]

      Sidenotesplus是一个综合包,用于将标记或引用的注释、临时提醒、文献引用、图形和表格放置在页边。在边缘中的内容可以是浮动的或相对于文本的固定位置。保留两面对称。对于BibLaTeX用户,提供了用于侧面引用的宏。
      提供三种边距样式。两页对称布局可选:(i) 边缘不整齐,带有边界分隔符中的注释引用,或(ii) 对齐,最后一行边缘不整齐;还有(iii) 经典风格,对齐,最后一行右边不整齐,注释引用在注释左侧,但失去了两页对称。
      命令\sidenote模仿\footnote命令,提供标记(数字、字母、罗马数字)引用。然而,也可以指定无编号和自定义符号。
      只有在指定包选项alerton时,临时侧面提醒才会显示。提醒在文档开发过程中非常有用,可以作为待办事项提醒。
      此外,对于图形和表格,标题也可以放置在边缘中。同时,也提供了图形、表格和文本的全宽环境。如果需要额外空间放置公式,文本环境可以部分扩展。 [ctan.org/pkg/sidenotesplus]

      example

      tests-sidenoteplus.tex

      skrapport

      The “skrapport” package on CTAN is a LaTeX document class designed for creating simple yet stylish documents, primarily reports such as those submitted for coursework. It aims to make typesetting these documents as effortless as possible by reimplementing much of the default article class functionality in LaTeX3, with modifications to both form and function for improved usability and aesthetics.
      Key features of skrapport include:

      • A small and straightforward design inspired by the PracTeX journal style.
      • Options to control paper size (e.g., A4, A5) and text layout, handled internally via the typearea package.
      • Support for two-column layouts implemented through a combination of the multicol and grid packages.
      • Multiple font stacks available, including kpfonts, lmodern, palatino, minion, skdoc, and word, with special handling for XeLaTeX and LuaLaTeX users.
      • Language support loading either babel or polyglossia for Swedish or English documents.
      • Optional loading of the skmath package for mathematical typesetting improvements.
      • Enhanced author and date macros, including ISO 8601 date formatting and improved author email handling.
      • A range of user-level commands and environments adapted for simple report writing.
      • Compatibility considerations with some LaTeX packages due to its reimplementation in LaTeX3.
        The class is maintained by Simon Sigurdhsson, licensed under the LaTeX Project Public License 1.3, and its latest version is 0.12k dated 2019. It is included in TeX Live and MiKTeX distributions. The package source, documentation, and bug tracker are available on GitHub and CTAN.
        Overall, skrapport is aimed at users who want a modern, clean, and easy-to-use class for reports and similar documents, especially in academic or coursework contexts, with a stylish but straightforward layout and good language and font support options. [ctan.org/pkg/skrapport]

      “skrapport”包在CTAN上是一个LaTeX文档类,旨在创建简单但时尚的文档,主要用于课程作业提交的报告。它的目标是通过在LaTeX3中重新实现大部分默认文章类的功能,使这些文档的排版尽可能轻松,同时在形式和功能上进行修改,以改善可用性和美观性。
      skrapport的主要特点包括:

      • 小而简单的设计,灵感来源于PracTeX期刊风格。
      • 控制纸张大小(如A4、A5)和文本布局的选项,通过typearea包内部处理。
      • 通过multicol和grid包的结合实施对两列布局的支持。
      • 提供多种字体栈,包括kpfonts、lmodern、palatino、minion、skdoc和word,并为XeLaTeX和LuaLaTeX用户提供特殊处理。
      • 语言支持,加载babel或polyglossia以适应瑞典语或英语文档。
      • 可选加载skmath包以改进数学排版。
      • 增强的作者和日期宏,包括ISO 8601日期格式和改进的作者电子邮件处理。
      • 一系列适用于简单报告写作的用户级命令和环境。
      • 由于在LaTeX3中的重新实现,对于某些LaTeX包的兼容性考虑。
        该类由Simon Sigurdhsson维护,依据LaTeX项目公共许可证1.3授权,最新版本为0.12k,日期为2019年。它已包含在TeX Live和MiKTeX发行版中。包的源代码、文档和错误追踪器可在GitHub和CTAN上获得。
        总体而言,skrapport旨在为那些希望获得现代、简洁且易于使用的报告及类似文档类的用户,特别是在学术或课程作业背景下,提供时尚但简单的布局以及良好的语言和字体支持选项。 [ctan.org/pkg/skrapport]

      soul

      This version is a merge of the original package soul (version 2.5 which contains some small corrections compared to the version 2.4 from 2003) and the soulutf8 which added some support for UTF-8. Namely the input encodings utf8.def from package inputenc and package ucs’s utf8x.def are supported. The original soul package has been renamed to soul-ori and is still loaded. Its documentation is still relevant. [ctan.org/pkg/soul]

      这个版本是原始软件包soul(版本2.5,与2003年的版本2.4相比,包含了一些小的修正)和soulutf8的合并,后者增加了对UTF-8的支持。即,输入编码utf8.def来自软件包inputenc,软件包ucs的utf8x.def也得到了支持。原始的soul软件包已经更名为soul-ori,并仍然被加载。其文档仍然适用。 [ctan.org/pkg/soul]

      quickstart

      \documentclass{article}
      \usepackage{xcolor}
      \sethlcolor{yellow}
      \setulcolor{blue}
      \setstcolor{red}
      \usepackage{soul}
      
      \begin{document}
      \hl{Highlighted text} % Highlighted text \\
      \ul{Underlined text} % Underlined text \\
      \st{Strikethrough text} % Strikethrough text \\
      \so{Small-caps text} % Small caps \\
      \hl{\st{highlighted and strikethrough}}
      \end{document}
      

      stage

      The “stage” package on CTAN is a LaTeX class specifically designed for creating plays of any length in a standard manuscript format suitable for production and submission. It builds upon the default LaTeX book class and includes special commands and environments tailored to the structure of stage plays, such as title pages, cast pages, acts, scenes, stage directions, and dialogues.
      Key features include:

      • Support for title page with contact/address blocks,
      • A dedicated cast page environment with commands to add characters,
      • Commands for acts, scenes, and dialogues,
      • Customization and translation support for automatic text (e.g., changing “The End” to other words),
      • A format that meets common manuscript standards for theatrical scripts,
      • Easy integration with LaTeX for playwrights preparing submission-ready scripts. [ctan.org/pkg/stage]

      CTAN上的“stage”包是一个专门为创建任何长度的舞台剧而设计的LaTeX类,采用适合制作和提交的标准手稿格式。它基于默认的LaTeX书籍类,并包含特别命令和环境,适用于舞台剧的结构,例如封面页、角色页、幕、场、舞台指示和对话。
      主要特点包括:

      • 支持带有联系方式/地址块的封面页,
      • 一个专用的角色页环境,带有添加角色的命令,
      • 幕、场和对话的命令,
      • 支持自动文本的定制和翻译(例如,将“The End”改为其他字词),
      • 符合戏剧剧本的常见手稿标准格式,
      • 与LaTeX的轻松集成,方便编剧准备提交的剧本。 [ctan.org/pkg/stage]

      quickstart

      \documentclass{stage}
      
      \title{}
      \author{}
      % \address{}
      
      \begin{document}
      \maketitle
      %%% Uncomment the following line to add a quote page.
      % \quotepage{Quote}{Author}
      %%% Uncomment the next few lines to add a cast page.
      % \begin{castpage}
      %
      \addcharacter{Name}{Description}
      %
      % \end{castpage}
      % The magic happens here...
      %
      % \act
      % \scene
      % \opensd{Opening stage directions.}
      % \dialog{who}{what}
      \end{document}
      

      tabularray

      LaTeX tables are implemented using TeX commands such as \halign, \noalign, \span, and \omit. In order to implement new features, many macro packages have modified the inner table commands inside LaTeX. This makes package code complicated, difficult to maintain, and often conflicts with each other.
      At present, the LaTeX3 programming layer is basically mature. This tabularray package will discard the old \halign commands and directly use LaTeX3 functions to parse the table, and then typeset the entire table. Under the premise of being compatible with the basic syntax of LaTeX2 tables, this macro package will completely separate the contents and styles of the table, and the styles of the table can be completely set in key-value way. [ctan.org/pkg/tabularray]

      LaTeX表格是通过TeX命令如\halign、\noalign、\span和\omit来实现的。为了实现新特性,许多宏包修改了LaTeX内部的表格命令。这使得宏包的代码变得复杂,难以维护,并且经常相互冲突。
      目前,LaTeX3编程层基本上已经成熟。这个tabularray包将抛弃旧的\halign命令,直接使用LaTeX3函数来解析表格,然后排版整个表格。在与LaTeX2表格基本语法兼容的前提下,这个宏包将完全分离表格的内容和样式,表格的样式可以完全通过键值方式设置。 [ctan.org/pkg/tabularray]

      quickstart

      \documentclass{article}
      \usepackage{tabularray}
      
      \begin{document}
      \begin{tblr}{lccr}
        \hline
        Alpha & Beta & Gamma & Delta \\
        \hline
        Epsilon & Zeta & Eta & Theta \\
        \hline
        Iota & Kappa & Lambda & Mu \\
        \hline
      \end{tblr}
      \end{document}
      

      tex4ebook

      TeX4ebook is a tool for conversion from \LaTeX\ to ebook formats, such as EPUB, MOBI and EPUB 3. It is based on TeX4ht^[https://tug.org/tex4ht/], which provides instructions for the actual \LaTeX\ to HTML conversion, and on make4ht^[https://ctan.org/pkg/make4ht?lang=en].
      The conversion is focused on the logical structure of the converted document and metadata. Basic visual appearance is preserved as well, but you should use custom configurations if you want to make the document more visually appealing. You can include custom CSS or fonts in a configuration file.
      TeX4ebook supports the same features as make4ht, in particular build files and extensions. These may be used for post-processing of the generated HTML files, or to configure the image conversion. See the make4ht documentation to see the supported features. [ctan.org/pkg/tex4ebook]

      TeX4ebook 是一个将 \LaTeX\ 转换为电子书格式(如EPUB、MOBI和EPUB 3)的工具。它基于TeX4ht^[https://tug.org/tex4ht/],该工具提供实际的 \LaTeX\ 到HTML转换的指令;同时基于make4ht^[https://ctan.org/pkg/make4ht?lang=en]。
      该转换专注于被转换文档的逻辑结构和元数据。基本的视觉外观也得以保留,但如果你希望让文档在视觉上更加吸引人,应该使用自定义配置。你可以在配置文件中包含自定义 CSS 或字体。
      TeX4ebook 支持与 make4ht 相同的功能,尤其是构建文件和扩展。这些可以用于生成的HTML文件的后处理,或者配置图像转换。请参见 make4ht 文档以了解支持的功能。 [ctan.org/pkg/tex4ebook]

      typed-checklist

      The main goal of this package is to provide means for typesetting checklists in a way that stipulates users to explicitly distinguish checklists for goals, for tasks, for artifacts, and for milestones — i.e., the type of checklist entries.
      The intention behind this is that a user of the package is coerced to think about what kind of entries he/she adds to the checklist. This shall yield a clearer result and, in the long run, help with training to distinguish entries of different types. [ctan.org/pkg/typed-checklist]

      该包的主要目标是提供一种排版检查表的方法,要求用户明确区分用于目标、任务、工件和里程碑的检查表——即检查表条目的类型。
      这样做的目的是让包的用户被迫思考他们添加到检查表中的条目类型。这将产生更清晰的结果,并且从长远来看,有助于训练区分不同类型的条目。 [ctan.org/pkg/typed-checklist]

      quickstart

      \documentclass{article}
      \usepackage{typed-checklist}
      
      \begin{document}
      \begin{CheckList}{Goal}
        \Goal{open}{I have a trendy haircut}
        \begin{CheckList}{Task}
          \Task{done}{find a hairdresser}
          \Task{started}{make an appointment}
          \Task{open}{go to the hairdresser}
        \end{CheckList}
        \Goal{achieved}{I have a typed checklist}
      \end{CheckList}
      \end{document}
      

      typog

      This package provides macros for micro-typographic enhancements. It covers a variety of topics:

      • Precise hyphenation control
      • Disable/break ligatures
      • Manual italic correction
      • Extra kerning for slash and hyphen
      • Raising selected characters (e.g. hyphen, en-dash, and em-dash)
      • Aligning of the last line of a paragraph
      • Filling of the last line of a paragraph
      • Word spacing control
      • Microtype front-end
      • Slightly sloppy paragraphs
      • Vertically partially-tied paragraphs
      • Breakable displayed equations
      • Setspace front-end
      • Smooth ragged-right paragraphs
        Moreover, typog provides an environment to flag interesting parts of the information deluge typically accumulating in a LaTeX log-file and an associated tool, typog-grep, that selectively retrieves these parts. [ctan.org/pkg/typog]

      该包提供用于微排版增强的宏。它涵盖了多种主题:

      • 精确的连字符控制
      • 禁用/打断连字
      • 手动斜体调整
      • 斜杠和连字符的额外字距
      • 提升选定字符(如连字符、短破折号和长破折号)
      • 对齐段落的最后一行
      • 填充段落的最后一行
      • 控制字间距
      • 微排版前端
      • 略显松散的段落
      • 垂直部分连接的段落
      • 可断开的显示公式
      • 设置行距的前端
      • 平滑的右侧不整齐段落
        此外,typog提供一个环境,用于标记在LaTeX日志文件中通常积累的信息洪流中的有趣部分,以及一个相关工具typog-grep,用于有选择地检索这些部分。 [ctan.org/pkg/typog]

      wallcalendar

      This package provides a wall calendar class with custom layouts and support for internationalization.
      It comes with the following layouts:

      • Full page photo, the calendar days overlaid with opacity
      • Full page photo, the photo above the calendar days
      • Small landscape photo, with a calendar grid
      • Year planner
      • Thumbnails and captions
      • Varnish mask
        There is also support for loading event marks from a CSV file. [ctan.org/pkg/wallcalendar]

      这个包提供了一个带有自定义布局和国际化支持的日历类。
      它包含以下布局:

      • 全页照片,日历天数覆盖透明度
      • 全页照片,照片在日历天数之上
      • 小型横向照片,带有日历网格
      • 年度规划
      • 缩略图和说明
      • 清漆蒙版
        还支持从CSV文件加载事件标记。 [ctan.org/pkg/wallcalendar]

      example

      cal-year-planner.tex

      xcolor

      xcolor provides easy driver-independent access to several kinds of colors, tints, shades, tones, and mixes of arbitrary colors by means of color expressions like \color{red!50!green!20!blue}. It allows to select a documentwide target color model and offers tools for automatic color schemes, conversion between twelve color models, alternating table row colors, color blending and masking, color separation, and color wheel calculations. [ctan.org/pkg/xcolor]

      xcolor通过颜色表达式(如 \color{red!50!green!20!blue})提供了独立于驱动程序的多种颜色、色调、阴影、色彩和任意颜色混合物的便捷访问。它允许选择文档范围内的目标颜色模型,并提供自动颜色方案、在十二种颜色模型之间转换、交替表格行颜色、颜色混合和遮罩、颜色分离,以及颜色轮计算的工具。 [ctan.org/pkg/xcolor]

      _command

      annex

      \listfiles

      The command \listfiles in LaTeX is used to generate a list of all the files used during the compilation of the document. This command should be placed in the preamble of your LaTeX document, before the \begin{document} command.

      Here are some key features of \listfiles:

      • Output: When you compile the document, LaTeX will create a log file (with a .log extension) that includes a list of all the packages and files that were loaded during the compilation process, along with their versions. This information is printed in the console output as well.

      • Useful for Debugging: Using \listfiles is particularly helpful for debugging and ensuring that you are using the correct versions of packages or to check which packages are being loaded. This can be helpful if you are encountering issues that may be related to package compatibility.

      • Not Visible in Document: The command does not produce any visible output in the final document; it only affects the compilation log.

      Here’s a simple example of how to use \listfiles:

      \documentclass{article}
      \listfiles % Lists files used during compilation
      
      \begin{document}
      
      This is a sample document.
      
      \end{document}
      

      After you compile this document, check the log file or the terminal output, and you should see a listing of all the packages used along with their respective versions. [GPT-4o mini]

      在 LaTeX 中,命令 \listfiles 用于生成在文档编译过程中使用的所有文件的列表。此命令应放置在 LaTeX 文档的导言区,即 \begin{document} 命令之前。

      以下是 \listfiles 的一些关键特性:

      • 输出:当你编译文档时,LaTeX 会创建一个日志文件(扩展名为 .log),其中包含在编译过程中加载的所有软件包和文件的列表,以及它们的版本信息。这些信息也会打印在控制台输出中。

      • 有助于调试:使用 \listfiles 特别有助于调试,确保你使用的是正确版本的软件包,或者检查正在加载哪些软件包。如果你遇到可能与软件包兼容性有关的问题,这会非常有帮助。

      • 文档中不可见:该命令不会在最终文档中产生任何可见输出;它仅影响编译日志。

      以下是使用 \listfiles 的简单示例:

      \documentclass{article}
      \listfiles % 列出编译过程中使用的文件
      
      \begin{document}
      
      这是一个示例文档。
      
      \end{document}
      

      编译完此文档后,请检查日志文件或终端输出,你应该能看到所有使用过的软件包及其各自版本的列表。 [GPT-4o mini]

      \null

      The command \null in LaTeX is used to create an empty box or a “null” element. It effectively serves several purposes:

      • Creates an Empty Box: When you use \null, it produces a box with zero height and zero width. This can be useful in various situations where you need a placeholder or need to force material to appear in a certain way without adding visible content.

      • Control Spacing: You can use \null to manipulate spacing and layout. For example, placing \null before or after other elements can help with alignment without displaying any text.

      • Preventing Underfull Boxes: In some situations where you might be dealing with typesetting issues, inserting \null can help avoid warnings about underfull or overfull boxes by creating a space that LaTeX can use.

      Here’s an example to illustrate the use of \null:

      \documentclass{article}
      \begin{document}
      
      This is some text.
      
      \null % Inserts an empty box
      
      This text appears after a null box.
      \end{document}
      

      In this code, \null does not produce any visible output but serves as a point in the text where you might want to control alignment or spacing. [GPT-4o mini]

      命令 \null 在 LaTeX 中用于创建一个空盒子或“空”元素。它有效地服务于多个目的:

      • 创建一个空盒子:当你使用 \null 时,它会生成一个高度和宽度都为零的盒子。这在需要占位符或者需要强制材料以某种方式出现而不添加可见内容的各种情况下非常有用。

      • 控制间距:你可以使用 \null 来操控间距和布局。例如,在其他元素之前或之后放置 \null 可以帮助对齐而不显示任何文本。

      • 防止欠满盒子:在某些情况下,当你处理排版问题时,插入 \null 可以帮助避免关于欠满或过满盒子的警告,通过创建一个 LaTeX 可以使用的空间。

      以下是一个使用 \null 的示例:

      \documentclass{article}
      \begin{document}
      
      这是一段文本。
      
      \null % 插入一个空盒子
      
      这段文本在空盒子后出现。
      \end{document}
      

      在这段代码中,\null 不产生任何可见的输出,但作为文本中的一个点,可以帮助你控制对齐或间距。 [GPT-4o mini]

      \twoside

      The \twoside option in LaTeX is used in document classes to specify that the document will be printed on both sides of the pages (duplex printing). When you enable this option, LaTeX adjusts the layout of the pages to account for the binding on the left side for odd-numbered pages and the right side for even-numbered pages. This results in appropriate margins for text to be comfortably read.

      Here are some key points about the \twoside option:

      • Usage: You can enable the \twoside option by including it in the document class declaration. For example:
      \documentclass[twoside]{article}
      
      • Margin Adjustments: When \twoside is enabled, LaTeX automatically adjusts the inner and outer margins. The inner margin is larger to allow for binding, while the outer margin is smaller to keep the text looking balanced.

      • Different First Page: In a two-sided document, LaTeX treats the first page differently. It typically uses a different layout for odd and even pages, allowing for a more polished appearance.

      • Benefits: Using \twoside is beneficial for documents such as theses or books, where printed copies will be bound.

      Here’s a simple example of using the \twoside option in a LaTeX document:

      \documentclass[twoside]{book}
      
      \begin{document}
      
      \chapter{Introduction}
      This is the introduction chapter.
      
      \newpage
      
      \chapter{Second Chapter}
      This is the second chapter.
      
      \end{document}
      

      In this example, the document is set up as a book with the \twoside option, which means LaTeX will apply appropriate formatting and margins for both odd and even pages. [GPT-4o mini]

      \twoside 选项在 LaTeX 中用于指定文档类,以便文档将在页面的两面打印(双面打印)。启用此选项后,LaTeX 会调整页面的布局,以考虑奇数页左侧的装订和偶数页右侧的装订。这将使文本的边距适合舒适阅读。

      以下是有关 \twoside 选项的一些关键点:

      • 用法:您可以通过在文档类声明中包含此选项来启用 \twoside。例如:
      \documentclass[twoside]{article}
      
      • 边距调整:启用 \twoside 时,LaTeX 会自动调整内侧和外侧边距。内侧边距较大,以便于装订,而外侧边距较小,以保持文本的平衡性。

      • 不同的首页:在双面文档中,LaTeX 对首页的处理是不同的。它通常对奇数页和偶数页使用不同的布局,从而使外观更加精致。

      • 好处:使用 \twoside 对于诸如论文或书籍等文档是有益的,因为打印的副本将被装订。

      以下是一个在 LaTeX 文档中使用 \twoside 选项的简单示例:

      \documentclass[twoside]{book}
      
      \begin{document}
      
      \chapter{引言}
      这是引言章节。
      
      \newpage
      
      \chapter{第二章节}
      这是第二章节。
      
      \end{document}
      

      在这个示例中,文档设置为一本书,并启用了 \twoside 选项,这意味着 LaTeX 将为奇数页和偶数页应用适当的格式和边距。 [GPT-4o mini]

      LÖVE

      reference

      resource

      later

      cache

      Lua

      install

      # Termux
      pkg install lua53 luarocks
      

      reference

      cross-reference

      cache

      hererocks

      install

      # Pip
      uv tool install hererocks
      

      usage

      # Arch
      mkdir $HOME/Usr/Lib
      cd $HOME/Usr/Lib
      hererocks lua53 -l5.3 -rlatest
      source lua53/bin/activate
      lua -v
      deactivate-lua
      # add $HOME/Usr/Lib/lua51/bin/ into path
      

      LuaJIT

      Build from source

      1

      # MSYS2
      git clone --depth=1 https://luajit.org/git/luajit.git
      cd luagit
      git checkout v2.1
      pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-make
      make CFLAGS=-DLUAJIT_ENABLE_LUA52COMPAT TARGET_LDFLAGS=-mwindows
      

      1. How to build windowless LuaJIT for Windows

      Node.js

      usage

      # Download and install pnpm
      corepack enable pnpm
      

      cross-reference

      mark

      NPM

      usage

      Publish npm package

      npm login
      
      # Publish
      npm init
      npm publish
      # npm version patch
      
      # Deprecate
      npm deprecate <pkg> "Deprecate `<pkg>`"
      

      Other

      npm config set proxy http://127.0.0.1:<port>
      npm config set https-proxy http://127.0.0.1:<port>
      npm config get proxy
      npm config get https-proxy
      
      npm config delete proxy
      npm config delete https-proxy
      npm config get proxy
      npm config get https-proxy
      

      nvm

      install

      # Arch
      sudo pacman -S nvm
      

      1

      # Windows 10
      scoop install nvm
      
      # Termux
      curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
      

      usage

      # Arch
      nvm install --lts
      nvm use --lts
      
      # Windows 10
      nvm list available
      nvm install lts
      nvm use lts
      # nvm install iron
      # nvm install hydrogen
      

      2

      # Termux
      PREFIX= nvm install stable
      PREFIX= nvm use --delete-prefix stable
      

      config

      vim ~/.nvm/settings.txt
      
      node_mirror: https://npmmirror.com/mirrors/node/
      

      reference

      cross-reference

      mark

      cache


      1. NVM for Windows

      2. nvm is not compatible with the “PREFIX” environment variable: currently set to “/usr/local”

      pnpm

      install

      # Arch
      sudo pacman -S pnpm
      # Windows 10
      scoop install pnpm
      

      Python

      install

      # Windows 10
      scoop install python310
      

      Personal do

      python -m pip install pipx
      pipx ensurepath
      

      usage

      Publish python package

      1

      python -m pip install -e .
      python -m pip install build twine
      python setup.py sdist bdist_wheel
      python -m build
      

      Other

      pip install -e . --index-url https://pypi.org/simple
      pip cache purge
      

      reference


      1. How to Publish an Open-Source Python Package to PyPI

      Anaconda

      1

      config

      subl ~/.condarc
      
      channels:
        - defaults
      show_channel_urls: true
      default_channels:
        - https://mirrors.ustc.edu.cn/anaconda/pkgs/main
        - https://mirrors.ustc.edu.cn/anaconda/pkgs/r
        - https://mirrors.ustc.edu.cn/anaconda/pkgs/msys2
      custom_channels:
        conda-forge: https://mirrors.ustc.edu.cn/anaconda/cloud
        bioconda: https://mirrors.ustc.edu.cn/anaconda/cloud
      
      conda clean -i
      

      1. USTC Mirror Help - Anaconda

      Jupyter

      install

      pip install jupyterlab
      

      usage

      # pip install --user ipykernel
      # ipython kernel install
      jupyter-lab
      

      Miniconda

      install

      # Arch
      yay -S --noconfirm miniconda3
      # Windows 10
      scoop install miniconda3-py310
      

      config

      # Arch
      conda init zsh
      # Windows 10
      conda init cmd.exe
      

      pipx

      install

      sudo pacman -S python-pipx
      

      pyenv-virtualenv

      install

      1

      git clone --depth=1 https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
      vim ~/.zshrc
      
      eval "$(pyenv virtualenv-init -)"
      
      source ~/.zshrc
      pyenv virtualenv 3.9.13 <venv>
      cd <project>
      pyenv local <venv>
      

      1. ubuntu에서 pyenv 설치하기

      pyenv

      install

      # Arch
      sudo pacman -S pyenv
      

      1 2

      # Ubuntu 22 ARM
      sudo apt update
      sudo apt-get install -y build-essential curl libbz2-dev libffi-dev liblzma-dev libncurses5-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev libxml2-dev libxmlsec1-dev llvm make tk-dev wget xz-utils zlib1g-dev
      git clone --depth=1 https://github.com/pyenv/pyenv.git ~/.pyenv
      
      vim ~/.zshrc
      
      export PYENV_ROOT="$HOME/.pyenv"
      [[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
      eval "$(pyenv init -)"
      
      source ~/.zshrc
      

      3 4

      # Windows 10
      git clone --depth=1 https://github.com/pyenv-win/pyenv-win ~/.pyenv
      

      Personal do

      pyenv install 3.11-dev
      pyenv global 3.11-dev
      pyenv shell 3.11-dev
      pip install build wheel
      

      usage

      # Windows 10
      # mkdir ~/.pyenv/cache
      # Put pkg-files into ~/.pyenv/cache
      # pyenv install -l | findstr 3.7
      # pyenv install 3.7.9-win32
      pyenv install -l | findstr 3.11
      pyenv install 3.11.9
      pyenv shell 3.11
      

      requirement


      1. ubuntu에서 pyenv 설치하기

      2. pyenv install: 3.x BUILD FAILED (Ubuntu 20.04 using python-build 20180424)

      3. Installation

      4. Add System Settings

      uv

      install

      # Arch
      sudo pacman -S uv
      # Windows 10
      scoop install uv
      

      usage

      # Install a specific version
      uv python list
      uv python install 3.10
      uv python pin 3.10
      
      # Install a package
      uv tool install <pkg>
      
      # Create a virtual environment
      uv venv .venv --python <version>
      uv venv
      # Arch
      source .venv/Scripts/activate
      deactivate
      # Windows 10
      .venv\Scripts\activate.bat
      deactivate.bat
      

      virtualenv

      install

      pyenv exec pip install virtualenv
      

      usage

      virtualenv <venv>
      source <venv>/bin/activate
      

      Renpy

      usage

      Build Distributions (Windows 10)

      1. Download SDK.zip from Download Ren’Py.
      2. Decompress it to renpy-*-sdk\.
      3. Run renpy-*-sdk\renpy.exe.
      4. preferences → General → Projects Directory → <path_to>\proj_renpy → Return.
      5. cd <path_to>\proj_renpy.
      6. git clone --depth=1 https://codeberg.org/fhs/katawa-shoujo-re-engineered.
      7. Renpy → PROJECTS → refresh → Select katawa-shoujo-re-engineered.
      8. Build Distributions → Build.

      Build Android (Windows 10)

      1. Install JDK and Gradle. For example:
      2. Download and Decompress OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.zip to jdk-21.04\.
      3. Download and Decompress gradle-8.5-bin.zip to gradle-8.5\. Or put gradle-8.5-bin.zip into %USERPROFILE%\.gradle\wrapper\dists\gradle-8.5-bin\<some_string>\.
      4. Add jdk-21.04\bin, gradle-8.5\bin into PATH.
      5. Restart Renpy.
      • Renpy → Android → Build
        1. Install SDK
        2. Generate Keys
        3. Build Package

      Build renpy documentation (Ubuntu 24.04 ARM)

      1

      sudo apt install virtualenvwrapper python3-dev libavcodec-dev libavformat-dev libswresample-dev libswscale-dev libharfbuzz-dev libfreetype6-dev libfribidi-dev libsdl2-dev libsdl2-image-dev libsdl2-gfx-dev libsdl2-mixer-dev libsdl2-ttf-dev libjpeg-dev
      . /usr/share/virtualenvwrapper/virtualenvwrapper.sh
      mkvirtualenv renpy
      pip install -U setuptools future six typing pefile requests ecdsa
      pip install -U "cython<3.0.0"
      
      git clone --depth=1 https://www.github.com/renpy/pygame_sdl2
      pushd pygame_sdl2
      python setup.py install
      python install_headers.py $VIRTUAL_ENV
      popd
      
      LATEST_RELEASE=$(curl -s https://api.github.com/repos/renpy/renpy/releases/latest | jq -r .tag_name)
      wget https://github.com/renpy/renpy/archive/refs/tags/$LATEST_RELEASE.zip
      unzip $LATEST_RELEASE.zip
      pushd renpy-*
      pushd module
      python setup.py install
      cd ..
      pushd sphinx
      pip install -U sphinx sphinx_rtd_theme sphinx_rtd_dark_mode
      ./build.sh
      

      cross-reference

      reference

      resource

      mark

      later

      cache

      Cancal


      1. renpy - Compiling the Modules

      Ruby

      install

      Install specific versions

      Get ruby-2.7.2.tar.bz2 from Ruby 2.7.2 Released.

      tar -xjf ruby-2.7.2.tar.bz2 -C ruby-2.7.2
      cd ruby-2.7.2
      ./configure
      make
      sudo make install
      
      ruby-build 2.7.2 ~/Usr/Lib/ruby-2.7.2
      

      cross-reference

      mark

      cache

      chruby

      install

      yay -S --noconfirm chruby
      

      rbenv

      install

      sudo pacman -S rbenv
      yay -S --noconfirm ruby-build
      # git clone --depth=1 https://github.com/rbenv/ruby-build "$(rbenv root)"/plugins/ruby-build
      

      rbenv for Windows

      $env:HOME = "C:\Users\User"
      $env:RBENV_ROOT = "$env:HOME\Usr\Lib\rbenv"
      iwr -useb "https://github.com/RubyMetric/rbenv-for-windows/raw/main/tool/install.ps1" | iex
      $env:RBENV_USE_MIRROR = "CN"
      & "$ENV:RBENV_ROOT\rbenv\bin\rbenv.ps1" init
      
      1. Set variable RBENV_ROOT=C:\Users\User\Usr\Lib\rbenv.
      2. Add %RBENV_ROOT%\rbenv\bin, %RBENV_ROOT%\shims into PATH.

      usage

      rbenv install <version>
      

      Rust

      install

      1

      # Arch
      sudo pacman -S rustup
      # Windows 10
      scoop install rustup
      # Ubuntu 22 ARM
      sudo apt install rustc cargo
      

      usage

      rustup default stable
      rustup update
      

      reference

      cross-reference

      cache


      1. How to Install Rust on Ubuntu

      Cargo-sweep

      install

      # Arch
      yay -S --noconfirm cargo-sweep
      # Cargo
      cargo install --force cargo-sweep
      

      usage

      cd <repo>
      cargo sweep --time 30
      cargo sweep --toolchains stable
      cargo sweep --installed
      

      Slidev

      usage

      1

      pnpm create slidev
      
      cd <proj_dir>
      pnpm install @slidev/theme-seriph
      pnpm install --save-dev prettier prettier-plugin-slidev
      subl .prettierrc.json
      # Copy from https://sli.dev/features/prettier-plugin#_2-activate-the-plugin
      
      pnpm run dev
      pnpm run build
      

      optional

      pnpm add -D playwright-chromium
      pnpm exec playwright install
      pnpm run export
      # slidev export --with-toc --output <filename>
      # slidev export -format pptx --dark
      # slidev export -format png --omit-background
      

      reference

      annex


      1. Getting Started

      _annex

      annex


      tags:

      • Slidev
      • Syntax

      Block Frontmatter

      ---
      theme: default
      ---
      
      # Slide 1
      
      ---
      
      ```yaml
      layout: quote
      ```
      
      # Slide 2
      
      ---
      
      # Slide 3
      

      Building and Hosting


      tags:

      • Presenter
      • Animation

      Click Markers

      <!--
      Content before the first click
      
      [click] This will be highlighted after the first click
      
      Also highlighted after the first click
      
      - [click] This list element will be highlighted after the second click
      
      [click:3] Last click (skip two clicks)
      -->
      

      tags:

      • Layout

      Draggable Elements

      # Directive - Data from the frontmatter
      
      ---
      dragPos:
        square: Left,Top,Width,Height,Rotate
      ---
      
      <img v-drag="'square'" src="https://sli.dev/logo.png">
      
      # Directive - Data from the directive value
      
      <img v-drag="[Left,Top,Width,Height,Rotate]" src="https://sli.dev/logo.png">
      
      # Component - Data from the frontmatter
      
      ---
      dragPos:
        foo: Left,Top,Width,Height,Rotate
      ---
      
      <v-drag pos="foo" text-3xl>
        <div class="i-carbon:arrow-up" />
        Use the `v-drag` component to have a draggable container!
      </v-drag>
      
      # Component - Data from props
      
      <v-drag pos="Left,Top,Width,Height,Rotate" text-3xl>
        <div class="i-carbon:arrow-up" />
        Use the `v-drag` component to have a draggable container!
      </v-drag>
      
      # Draggable Arrow
      
      <v-drag-arrow />
      

      tags:

      • Drawing

      Drawing & Annotations

      ---
      drawings:
        persist: true
        presenterOnly: true
        # enabled: false
        # enabled: dev
      ---
      

      tags:

      • Theme
      • CLI

      Eject Theme

      ---
      theme: ./theme
      ---
      
      slidev theme eject
      

      Frontmatter & Headmatter

      ---
      theme: seriph
      title: Welcome to Slidev
      ---
      
      # Slide 1
      
      The frontmatter of this slide is also the headmatter
      
      ---
      layout: center
      background: /background-1.png
      class: text-white
      ---
      
      # Slide 2
      
      A page with the layout `center` and a background image
      
      ---
      
      # Slide 3
      
      A page without frontmatter
      
      ---
      src: ./pages/4.md  # This slide only contains a frontmatter
      ---
      
      ---
      
      # Slide 5
      

      tags:

      • Syntax

      Frontmatter Merging

      # ./slides.md
      
      ---
      src: ./cover.md
      background: https://sli.dev/bar.png // [!code highlight]
      class: text-center
      ---
      
      # ./cover.md
      
      ---
      layout: cover
      background: https://sli.dev/foo.png // [!code highlight]
      ---
      
      # Cover
      
      Cover Page
      

      Will be:

      ---
      layout: cover
      background: https://sli.dev/bar.png // [!code highlight]
      class: text-center
      ---
      
      # Cover
      
      Cover Page
      

      tags:

      • Export
      • Build

      Generate PDF when Building

      ---
      download: true
      # download: 'https://remote.com/skip-render.pdf'
      ---
      

      tags:

      • Navigation
      • Layout

      Global Layers

      <!-- global-bottom.vue -->
      <template>
        <footer class="absolute bottom-0 left-0 right-0 p-2">Your Name</footer>
      </template>
      
      <!-- custom-nav-controls -->
      <template>
        <button class="icon-btn" title="Next" @click="$nav.next">
          <div class="i-carbon:arrow-right" />
        </button>
      </template>
      
      <!-- hide the footer from Page 4 -->
      <template>
        <footer
          v-if="$nav.currentPage !== 4"
          class="absolute bottom-0 left-0 right-0 p-2"
        >
          Your Name
        </footer>
      </template>
      
      <!-- hide the footer from "cover" layout -->
      <template>
        <footer
          v-if="$nav.currentLayout !== 'cover'"
          class="absolute bottom-0 left-0 right-0 p-2"
        >
          Your Name
        </footer>
      </template>
      
      <!-- an example footer for pages -->
      <template>
        <footer
          v-if="$nav.currentLayout !== 'cover'"
          class="absolute bottom-0 left-0 right-0 p-2"
        >
          {{ $nav.currentPage }} / {{ $nav.total }}
        </footer>
      </template>
      
      <!-- custom-nav-controls -->
      <!-- hide the button in Presenter model -->
      <template>
        <button v-if="!$nav.isPresenter" class="icon-btn" title="Next" @click="$nav.next">
          <div class="i-carbon:arrow-right" />
        </button>
      </template>
      

      icons


      tags: - Components

      Icons

      <uim-rocket />
      <uim-rocket class="text-3xl text-red-400 mx-2" />
      <uim-rocket class="text-3xl text-orange-400 animate-ping" />
      

      tags:

      • Codeblock
      • Syntax

      Import Code Snippets

      <<< @/snippets/snippet.js#region-name ts {monaco}{height:200px}
      <<< @/snippets/snippet.js {2,3|5}{lines:true}
      <<< @/snippets/snippet.js {*}{lines:true}
      

      tags:

      • Syntax

      Importing Slides

      # ./slides.md
      
      # Title
      
      This is a normal page
      
      ---
      src: ./pages/toc.md // [!code highlight]
      ---
      
      <!-- this page will be loaded from './pages/toc.md' -->
      
      Contents here are ignored
      
      ---
      
      # Page 4
      
      Another normal page
      
      ---
      src: ./pages/toc.md   # Reuse the same file // [!code highlight]
      ---
      
      # ./pages/toc.md
      
      # Table of Contents
      
      Part 1
      
      ---
      
      # Table of Contents
      
      Part 2
      

      Import file:

      ---
      src: ./another-presentation.md#2,5-7
      ---
      

      latex


      tags: - Codeblock - Syntax

      LaTeX

      $\sqrt{3x-1}+(1+x)^2$
      
      $$ {1|3|all}
      \begin{aligned}
      \nabla \cdot \vec{E} &= \frac{\rho}{\varepsilon_0} \\
      \nabla \cdot \vec{B} &= 0 \\
      \nabla \times \vec{E} &= -\frac{\partial\vec{B}}{\partial t} \\
      \nabla \times \vec{B} &= \mu_0\vec{J} + \mu_0\varepsilon_0\frac{\partial\vec{E}}{\partial t}
      \end{aligned}
      $$
      

      Layout

      ---
      layout: quote
      ---
      

      tags:

      • Codeblock
      • Animation

      Line Highlighting

      ```ts {none|2-3|5|all|hide}
      function add(
        a: Ref<number> | number,
        b: Ref<number> | number
      ) {
        return computed(() => unref(a) + unref(b))
      }
      ```
      

      Line Numbers

      ```ts {6,7}{lines:true,startLine:5}
      function add(
        a: Ref<number> | number,
        b: Ref<number> | number
      ) {
        return computed(() => unref(a) + unref(b))
      }
      ```
      
      ```ts {*}{lines:true,startLine:5}
      // ...
      ```
      

      tags:

      • Codeblock
      • Layout

      Max Height

      ```ts {2|3|7|12}{maxHeight:'100px'}
      function add(
        a: Ref<number> | number,
        b: Ref<number> | number
      ) {
        return computed(() => unref(a) + unref(b))
      }
      /// ...as many lines as you want
      const c = add(1, 2)
      ```
      
      ```ts {*}{maxHeight:'100px'}
      // ...
      ```
      

      tags:

      • Syntax
      • Styling

      MDC Syntax

      ---
      mdc: true
      ---
      
      This is a [red text]{style="color:red"} :inline-component{prop="value"}
      
      ![](/image.png){width=500px lazy}
      
      ::block-component{prop="value"}
      The **default** slot
      ::
      

      tags:

      • Diagram

      Mermaid Diagrams

      ```mermaid {theme: 'neutral', scale: 0.8}
      graph TD
      B[Text] --> C{Decision}
      C -->|One| D[Result 1]
      C -->|Two| E[Result 2]
      ```
      

      tags:

      • Codeblock
      • Editor

      Monaco Editor

      ```ts {monaco}
      console.log('HelloWorld')
      ```
      

      tags:

      • Codeblock
      • Editor

      Monaco Runner

      ```ts {monaco-run}
      function distance(x: number, y: number) {
        return Math.sqrt(x ** 2 + y ** 2)
      }
      console.log(distance(3, 4))
      ```
      

      tags:

      • Navigation
      • Styling

      Navigation Direction Variants

      /* example: delay on only forward but not backward */
      .slidev-nav-go-forward .slidev-vclick-target {
        transition-delay: 500ms;
      }
      .slidev-nav-go-backward .slidev-vclick-target {
        transition-delay: 0;
      }
      
      <div v-click class="transition forward:delay-300">Element</div>
      

      Notes

      ---
      layout: cover
      ---
      
      # Slide 1
      
      This is the cover page.
      
      <!-- This is a **note** -->
      
      ---
      
      # Slide 2
      
      <!-- This is NOT a note because it is not at the end of the slide -->
      
      The second page
      
      <!--
      This is _another_ note
      -->
      

      tags:

      • Diagram

      PlantUML Diagrams

      ```plantuml
      @startuml
      Alice -> Bob : Hello!
      @enduml
      ```
      

      tags:

      • Drawing
      • Animation

      Rough Markers

      <span v-mark="{ at: 5, color: '#234', type: 'circle' }">
      Important text
      </span>
      

      tags:

      • Codeblock
      • Animation

      Shiki Magic Move

      ````md magic-move
      ```js
      console.log(`Step ${1}`)
      ```
      ```js
      console.log(`Step ${1 + 1}`)
      ```
      ```ts
      console.log(`Step ${3}` as string)
      ```
      ````
      
      ````md magic-move {at:4, lines: true} // [!code hl]
      ```js {*|1|2-5} // [!code hl]
      let count = 1
      function add() {
        count++
      }
      ```
      
      Non-code blocks in between as ignored, you can put some comments.
      
      ```js {*}{lines: false} // [!code hl]
      let count = 1
      const add = () => count += 1
      ```
      ````
      

      tags:

      • Layout

      Slide Canvas Size

      ---
      # aspect ratio for the slides
      aspectRatio: 16/9
      # real width of the canvas, unit in px
      canvasWidth: 980
      ---
      
      # Your slides here
      

      tags:

      • Client-API

      Slide Hooks

      import { onSlideEnter, onSlideLeave, useIsSlideActive } from '@slidev/client'
      
      const isActive = useIsSlideActive()
      
      onSlideEnter(() => {
        /* Called whenever the slide becomes active */
      })
      
      onSlideLeave(() => {
        /* Called whenever the slide becomes inactive */
      })
      

      tags:

      • Styling
      • Syntax

      Slide Scope Styles

      # Slidev
      
      > Hello **world**
      
      <style>
      blockquote {
        strong {
          --uno: 'text-teal-500 dark:text-teal-400';
        }
      }
      </style>
      

      tags:

      • Layout
      • Syntax

      Slot Sugar for Layouts

      ---
      layout: two-cols
      ---
      
      ::right::
      
      # Right
      
      This shows on the right
      
      ::default::
      
      # Left
      
      This is shown on the left
      

      tags:

      • Layout

      The Transform Component

      <Transform :scale="0.5">
        <YourElements />
      </Transform>
      

      Theme and Addons

      ---
      theme: seriph
      addons:
        - '@slidev/plugin-notes'
      ---
      

      tags:

      • Codeblock

      TwoSlash Integration

      ```ts twoslash
      import { ref } from 'vue'
      
      const count = ref(0)
      //            ^?
      ```
      

      tags:

      • Codeblock
      • Editor

      Writable Monaco Editor

      <<< ./some-file.ts {monaco-write}
      

      tags:

      • Layout

      Zoom Slides

      zoom: 0.8
      

      typst

      reference

      resource

      mark

      later

      extra

      cache

      opt

      cross-reference

      mark

      later

      extra

      cache

      resource

      mark

      later

      extra

      cache

      7-zip

      abogen

      install

      # Windows 10
      git clone --depth=1 https://github.com/denizsafak/abogen
      cd abogen
      uv venv
      source .venv/bin/activate
      uv pip install torch torchaudio torchvision --index-url https://download.pytorch.org/whl/cu128
      uv pip install abogen
      abogen
      
      # Arch
      python -m venv .abogen
      source .abogen/bin/activate
      pip3 install abogen
      
      # For AMD GPU
      pip3 uninstall torch 
      pip3 install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/rocm6.4
      ln -sfn $(pwd)/.abogen/bin/abogen ~/.local/bin/abogen
      deactivate
      

      arch1t3cht’s Aegisub “fork”

      reference

      Alacritty

      Alacritty is a modern terminal emulator that comes with sensible defaults, but allows for extensive configuration. By integrating with other applications, rather than reimplementing their functionality, it manages to provide a flexible set of features with high performance. The supported platforms currently consist of BSD, Linux, macOS and Windows.
      The software is considered to be at a beta level of readiness; there are a few missing features and bugs to be fixed, but it is already used by many as a daily driver. [alacritty.org]

      Alacritty是一个现代终端模拟器,提供合理的默认设置,但允许用户进行广泛的配置。通过与其他应用集成而不是重新实现其功能,它能够提供一套灵活且高性能的功能。目前支持的操作平台包括BSD、Linux、macOS和Windows。
      该软件被认为处于测试阶段;还缺少一些功能和待修复的错误,但已经被许多人作为日常工作工具使用。 [alacritty.org]

      install

      # Arch
      sudo pacman -S alacritty
      # Windows 10
      scoop install alacritty
      
      # Preview image in yazi
      sudo pacman -S ueberzugpp
      

      setting

      1

      # Arch
      vim $HOME/.config/alacritty/alacritty.toml
      # Windows 10
      subl %APPDATA%\alacritty\alacritty.toml
      

      reference

      resource

      cache


      1. Config - Alacritty

      Anki

      optional

      • Tools → Preferences → Syncing.
        • Self-hosted sync server http://<your_host>:<port>.
          • If <your_host> don’t work, try used ip.
        • AnkiWeb Account → Login → Used <username>, <password> set in Anki Sync Server’s environment SYNC_USER.

      reference

      cross-reference

      extra

      resource

      later

      extra

      cache

      AnythingLLM

      install

      # Windows 10
      scoop install anythingllm
      

      reference

      later

      cache

      Aseprite

      Animated sprite editor & pixel art tool (Windows, macOS, Linux). [aseprite/aseprite]

      动画精灵编辑器和像素艺术工具(适用于Windows、macOS、Linux)。 [aseprite/aseprite]

      resource

      cache

      Audacity

      Audacity is an easy-to-use, multi-track audio editor and recorder for Windows, macOS, GNU/Linux and other operating systems. Audacity is free, open source software. [audacityteam.org]

      Audacity是一款易于使用的多轨音频编辑和录音软件,适用于Windows、macOS、GNU/Linux和其他操作系统。Audacity是免费的开源软件。 [audacityteam.org]

      install

      # Arch
      sudo pacman -S audacity
      # Windows 10
      scoop install audacity
      

      usage

      • Effect → Noise Removal and Repair
        • Noise Reduction
        • Noise Gate
      • Edit → Preferences → Modules → mod-script-pipe → Enabled

      reference

      AudioBookConverter

      AudioBookConverter was originally designed as simple and lightweight application to convert a set of mp3 files to a single m4b (aac) file to be played on your i-device (or any device now) Over time AudioBookConverter evolved and currently can support conversion of most of popular formats to m4b, it also can handle existing m4b files and process them. AudioBookConverter can work smart to find relevant artwork and can do advanced chapter management.
      Note: Mac and Linux versions are experimental and may require some skills to install and run them and may not work as you expect [yermak/AudioBookConverter]

      AudioBookConverter最初设计为一个简单轻量的应用程序,可以将一组mp3文件转换为单个m4b(aac)文件,以便在您的i设备(或任何设备)上播放。随着时间的推移,AudioBookConverter逐渐发展,目前可以支持将大多数流行格式转换为m4b,它还可以处理现有的m4b文件并对其进行处理。AudioBookConverter能够智能地查找相关的封面艺术,并且可以进行高级章节管理。
      注意:Mac和Linux版本是实验性的,可能需要一定的技能来安装和运行,且可能无法如您所期望的那样正常工作。 [yermak/AudioBookConverter]

      usage

      For example, I have chapters audio files for a book.

      1. Add → Folder → Add folder.
      2. If audio files alright have title → Chapters → Chapter 1 → Edit
        • “Chapter” (Off)
        • Chapter No (Off) title
        • Duration (Off)
        • Apply for all chapters (On)
      3. If not have, Chapter 1 → Edit → Enter custom title. Do it for every chapters.
      4. Edit Book Info.
      5. Go tab Art Work, Add the cover picture.
      6. Quality:
        Preset: android 5+
        Format: m4b
        Split by: parts
        Speed: 1.0
        Sampling frequency, Hz: 44100
        Channels: 2
        Cut-off frequencies higher than: 12000
        Force re-encoding: Auto
        Constant bitrate, kb/s: 128
        
      7. Start.

      Name template

      Book filename teamplate:

      <WRITER><if(SERIES)> - <SERIES><if(BOOK_NUMBER)> - Book <BOOK_NUMBER; format="%,02d"><endif><endif> - <TITLE><if(NARRATOR)> {<NARRATOR>}<endif>
      

      Book Part filename template (Default):

      <if(WRITER)><WRITER> <endif><if(SERIES)>- [<SERIES><if(BOOK_NUMBER)> -<BOOK_NUMBER><endif>] - <endif><if(TITLE)><TITLE><endif><if(NARRATOR)> (<NARRATOR>)<endif><if(YEAR)>-<YEAR><endif><if(PART)>, Part <PART; format="%,03d"><endif>
      

      Chapter template (Default):

      <if(BOOK_NUMBER)><BOOK_NUMBER>. <endif><if(BOOK_TITLE)><BOOK_TITLE>. <endif><if(CHAPTER_TEXT)><CHAPTER_TEXT> <endif><if(CHAPTER_NUMBER)><CHAPTER_NUMBER; format="%,03d"> <endif><if(TAG)><TAG> <endif><if(CUSTOM_TITLE)><CUSTOM_TITLE> <endif><if(DURATION)> - <DURATION; format="%02d:%02d:%02d"><endif>
      

      annex

      audiobookconverter

      BallonsTranslator

      深度学习辅助漫画翻译工具,支持一键机翻和简单的图像/文本编辑。 [dmMaze/BallonsTranslator]

      Yet another computer-aided comic/manga translation tool powered by deep learning. [dmMaze/BallonsTranslator]

      install

      git clone --depth=1 https://github.com/dmMaze/BallonsTranslator
      cd BallonsTranslator
      uv venv
      .venv\Scripts\activate.bat
      uv python install 
      uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
      uv pip install -r requirements.txt
      

      usage

      python launch.py
      

      config

      • Setting
        • DL Module → Translator
        • General → Typesetting → Auto layout (Off)

      annex

      ballonstranslator

      chaiNNer

      A node-based image processing GUI aimed at making chaining image processing tasks easy and customizable. Born as an AI upscaling application, chaiNNer has grown into an extremely flexible and powerful programmatic image processing application. [chaiNNer-org/chaiNNer]

      一个基于节点的图像处理图形用户界面,旨在使图像处理任务的链式操作变得简单且可定制。作为一款AI放大应用程序,chaiNNer发展成为一个极其灵活和强大的编程图像处理应用程序。 [chaiNNer-org/chaiNNer]

      1. Get chaiNNer-windows-x64-**.zip from Releases.
      2. Decompress .zip to chaiNNer/.
      3. Download cpython-3.11.5+20230826-x86_64-pc-windows-msvc-shared-install_only.tar.gz from integratedPython.ts1.
      4. Decompress .tar.gz to python/.
      5. Put python/ into chaiNNer/python/.

      Enable model architecture support

      cd chaiNNer/python/python
      # pytorch
      python -m pip install torch==2.1.2 torchvision==0.16.2 --index-url https://download.pytorch.org/whl/cu121
      python -m pip install facexlib==0.3.0 einops==0.6.1 safetensors==0.4.0 spandrel==0.3.4 spandrel-extra-arches==0.1.1
      # ncnn
      python -m pip install ncnn==2023.6.18
      # onnx
      python -m pip install onnx==1.16.0 onnxoptimizer==0.3.13 onnxruntime-gpu==1.17.1 protobuf==4.24.2
      
      1. Get PyTorch models from Model Architecture Support or get ONNX model from Model Architecture Support. Or find models in multiple formats on OpenModelDB.
      2. Or you can convert PyTorch model to ONNX, NCNN model in chaiNNer.
      3. chaiNNer → Manage Dependencies → Packages → PyTorch, ONNX, NCNN → Install
      4. Restart chaiNNer.
      5. Usage with LOAD MODEL node and corresponding node for PROCESSING.

      Enable Stable Diffusion (External)

      cd stable-diffusion-webui
      webui-user.bat --api
      
      1. chaiNNer → Settings → Advanced → Enable experimental features → Restart chaiNNer
      2. chaiNNer → Use System Python instead

      reference

      annex

      chainner


      1. chaiNNer does not respect system proxy settings

      clawPDF

      usage

      • PDF阅读器 → 打印 → clawPDF → 属性 → 页面设置 → 方向(横向) → 确定 → 缩放类型(每张纸多页面) → 每张页面数(2)

      annex

      clawpdf

      CUETools

      install

      # Arch
      sudo pacman -S cuetools
      # Windows 10
      scoop install cuetools
      

      usage

      • 导出 → [%directoryname%\]%artist% - %album%\%filename%-new[%unique%].cue

      Darktable

      darktable is an open source photography workflow application and non-destructive raw developer - a virtual lighttable and darkroom for photographers. It manages your digital negatives in a database, lets you view them through a zoomable lighttable and enables you to develop raw images, enhance them and export them to local or remote storage. [darktable-org/darktable]

      darktable是一款开源摄影工作流应用程序和非破坏性RAW开发工具——为摄影师提供的虚拟灯箱和暗房。它在数据库中管理您的数字底片,让您通过可缩放的灯箱查看它们,并使您能够开发RAW图像、增强图像并将其导出到本地或远程存储。 [darktable-org/darktable]

      install

      # Arch
      sudo pacman -S darktable
      # Windows 10
      scoop install darktable
      

      resource

      cache

      DBeaver

      Free multi-platform database tool for developers, SQL programmers, database administrators and analysts.

      • Has a lot of features including schema editor, SQL editor, data editor, AI integration, ER diagrams, data export/import/migration, SQL execution plans, database administration tools, database dashboards, Spatial data viewer, proxy and SSH tunnelling, custom database drivers editor, etc.
      • Out of the box supports more than 100 database drivers.
      • Supports any database which has JDBC or ODBC driver (basically - almost all existing databases). [dbeaver/dbeaver]

      为开发人员、SQL程序员、数据库管理员和分析师提供的免费多平台数据库工具。

      • 具有许多功能,包括模式编辑器、SQL编辑器、数据编辑器、AI集成、ER图、数据导出/导入/迁移、SQL执行计划、数据库管理工具、数据库仪表盘、空间数据查看器、代理和SSH隧道、自定义数据库驱动编辑器等。
      • 开箱即用支持100多种数据库驱动。
      • 支持任何具有JDBC或ODBC驱动的数据库(基本上几乎所有现有数据库)。 [dbeaver/dbeaver]

      install

      # Windows 10
      scoop install dbeaver
      

      reference

      Delect It Easy

      install

      scoop install detect-it-easy
      

      Discord

      resource

      cache

      DocumentCorrector

      install

      git clone --depth=1 https://github.com/Robomarchello/DocumentCorrector
      uv venv
      .venv\Scripts\activate.bat
      uv pip install -r requirements.txt
      pip install nuitka setuptools
      

      usage

      python makeExe.py
      

      annex

      documentcorrector

      dupeGuru

      install

      # Arch
      yay -S --noconfirm dupeguru
      # Windows 10
      scoop install dupeguru
      

      espanso

      install

      # Arch
      yay -S --noconfirm espanso-x11-bin
      # Windows 10
      scoop install espanso
      

      Personal do

      # Windows 10
      rmdir /S /Q "%SCOOP%\apps\espanso\current\.espanso\config"
      mklink /J "%SCOOP%\apps\espanso\current\.espanso\config" "%DOTFILES_DIR%\.config\espanso\config"
      rmdir /S /Q "%SCOOP%\apps\espanso\current\.espanso\match"
      mklink /J "%SCOOP%\apps\espanso\current\.espanso\match" "%DOTFILES_DIR%\.config\espanso\match"
      

      reference

      resource

      Etcher

      install

      # Arch
      yay -S --noconfirm etcher-bin
      # Windows 10
      scoop install etcher
      

      Exaile

      annex

      exaile

      ExifCleaner

      install

      # Arch
      yay -S --noconfirm exifcleaner
      # Windows 10
      scoop install exifcleaner
      

      annex

      exifcleaner

      FastFlix

      install

      # Arch
      yay -S --noconfirm fastflix-bin
      # Windows 10
      scoop install fastflix
      

      annex

      fastflix

      Fluent Reader

      install

      # Arch
      yay -S --noconfirm fluent-reader
      # Windows 10
      scoop install fluent-reader
      

      config

      1. miniflux_host → Settings → API Keys → Create a new API key → fluent-reader → Copy the Token
      2. Fluent Reader → Setting → Select a service Service → Miniflux:
        Endpoint: http://127.0.0.1:8070
        Type: API Key
        Password: <token>
        

      reference

      annex

      fluent-reader

      FotoKilof

      annex

      fotokilof

      FreeCAD

      FreeCAD is a 3D parametric modeling application. It is primarily made for mechanical design, but also serves all other uses where you need to model 3D objects with precision and control over modeling history.
      FreeCAD has been under development since 2002, and it offers a large list of features. Capabilities are still missing but it is powerful enough for hobbyist use, and small workshops. There is a fast-growing community of enthusiastic users who participate in the FreeCAD forum, and you can find many examples of quality projects developed with FreeCAD there. [wiki.freecad.org]

      FreeCAD是一款3D参数化建模应用程序。它主要用于机械设计,但也适用于需要精确建模和对建模历史进行控制的其他各种用途。
      FreeCAD自2002年以来一直在开发,提供了大量功能。尽管仍有一些功能缺失,但它足够强大,适合爱好者使用以及小型工作坊。有一个快速增长的热心用户社区,他们参与FreeCAD论坛,您可以在那找到许多使用FreeCAD开发的优质项目示例。 [wiki.freecad.org]

      install

      # Arch
      sudo pacman -S freecad
      # Windows 10
      scoop install freecad
      

      reference

      Game2Text

      install

      git clone --depth=1 https://github.com/mathewthe2/Game2Text
      cd Game2Text
      uv venv .venv --python 3.7
      .venv\Scripts\activate.bat
      uv pip install -r requirements.txt
      

      Garlmap

      install

      # Arch
      yay -S --noconfirm garlmap
      

      annex

      garlmap

      GIMP

      install

      # Arch
      sudo pacman -S gimp
      # Windows 10
      scoop install gimp
      

      usage

      • 复制图层 → 选中新图层 → 颜色 → 去色 → 去色 → 模式 → luma
      • 添加图层模板 → 选区工具 → 填充黑色
      • 模式 → 点光/叠加/色相

      reference

      GitHub Desktop

      install

      1

      # Arch
      yay -R github-desktop-bin
      rm -rf ~/.config/GitHub\ Desktop
      sudo pacman -S gnome-keyring
      yay -S --noconfirm github-desktop-bin
      

      1. The name is not activatable · Issue #18121 · desktop/desktop

      Gitify

      GitHub Notifications on your menu bar. Available on macOS, Windows and Linux. [gitify-app/gitify]

      GitHub通知可在您的菜单栏中查看。适用于macOS、Windows和Linux。 [gitify-app/gitify]

      install

      # Arch
      yay -S --noconfirm gitify-bin
      # Windows 10
      scoop install gitify
      

      config

      • Gitify → Filters → Turn on
        • Type
          • Commit
          • Discussion
          • Issue
          • Pull Request
        • Reason
          • Approval Requested
          • Assigned
          • Authored
          • Commented
          • Mentioned
          • Review Requested
          • State Changed

      G’MIC-Qt

      gPodder

      gPodder is a simple, open source podcast client.
      In development since 2005 with a proven, mature codebase. [gpodder.github.io]

      gPodder是一款简单的开源播客客户端。
      自2005年以来一直在开发,拥有成熟、经过验证的代码库。 [gpodder.github.io]

      install

      # Arch
      sudo pacman -S gpodder
      # Windows 10
      scoop install gpodder
      

      config

      • gPodder → Preferences
        • Updating
          • Maximum number of episodes per podcast → 1000
          • Check connection before updating (if supported) (Off)
          • Extension
            • (Arch) Gtk Status Icon (On)
            • “Open website” episode and podcast context menu (On)
            • Enqueue/Resume in media players (On)
            • Minimize on start (On)
            • Rename episodes after download (On)

      resource

      cache

      GridPlayer

      install

      # Arch
      yay -S --noconfirm gridplayer-appimage
      sudo pacman -S vlc
      # Windows 10
      scoop install gridplayer vlc
      

      HandBrake

      install

      # Arch
      sudo pacman -S handbrake handbrake-cli
      # Windows 10
      scoop install handbrake handbrake-cli
      

      config

      • HandBrake → Preferences
        • General → Path to Media Player → Path → Browse → <player_app>
        • Output Files → Automatically name output files
          • Default Path → Browse → <save_to_path>
          • File Format → {source}.{preset}
          • Change case to Title Case (Off)
          • Replace underscores with a space (Off)

      usage

      # Encode video using Handbrake CLI with a preset
      handbrakecli --preset-import-file <preset.json> --input "$1" --output "_handbrake.mp4"
      

      reference

      HTTrack

      annex

      httrack

      Inkscape

      Inkscape is a Free and open source vector graphics editor. It offers a rich set of features and is widely used for both artistic and technical illustrations such as cartoons, clip art, logos, typography, diagramming and flowcharting. It uses vector graphics to allow for sharp printouts and renderings at unlimited resolution and is not bound to a fixed number of pixels like raster graphics. Inkscape uses the standardized SVG file format as its main format, which is supported by many other applications including web browsers.
      SVG Features include basic shapes, paths, text, markers, clones, alpha blending, transforms, gradients, and grouping. In addition, Inkscape supports Creative Commons meta-data, node-editing, layers, complex path operations, text-on-path, and SVG XML editing. It also imports several formats like EPS, Postscript, JPEG, PNG, BMP, and TIFF and exports PNG as well as multiple vector-based formats.
      Inkscape’s main motivations are to provide the Open Source community with a fully W3C compliant XML, SVG, and CSS2 drawing tool emphasizing a lightweight core with powerful features added as extensions, and the establishment of a friendly, open, community-oriented development processes. [inkscape/inkscape]

      Inkscape是一款免费开源的矢量图形编辑器。它提供了一套丰富的功能,广泛用于艺术和技术插图,如卡通、剪贴画、徽标、排版、图表和流程图。它使用矢量图形以实现清晰的打印和无限分辨率的渲染,而不是像栅格图形那样受到固定像素数量的限制。Inkscape使用标准化的SVG文件格式作为其主要格式,这种格式被许多其他应用程序(包括网页浏览器)所支持。
      SVG功能包括基本形状、路径、文本、标记、克隆、alpha混合、变换、渐变和分组。此外,Inkscape支持创意共享元数据、节点编辑、图层、复杂路径操作、路径上的文本以及SVG XML编辑。它还可以导入多种格式,如EPS、Postscript、JPEG、PNG、BMP和TIFF,并可以导出PNG以及多种基于矢量的格式。
      Inkscape的主要动机是为开源社区提供一个完全符合W3C标准的XML、SVG和CSS2绘图工具,强调轻量级核心并通过扩展添加强大功能,以及建立一个友好、开放、以社区为导向的开发流程。 [inkscape/inkscape]

      install

      # Arch
      sudo pacman -S inkscape
      # Windows 10
      scoop install inkscape
      

      resource

      cache

      Joplin

      Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into notebooks. The notes are searchable, can be copied, tagged and modified either from the applications directly or from your own text editor. The notes are in Markdown format.
      Notes exported from Evernote can be imported into Joplin, including the formatted content (which is converted to Markdown), resources (images, attachments, etc.) and complete metadata (geolocation, updated time, created time, etc.). Plain Markdown files can also be imported.
      Joplin is “offline first”, which means you always have all your data on your phone or computer. This ensures that your notes are always accessible, whether you have an internet connection or not.
      The notes can be securely synchronised using end-to-end encryption with various cloud services including Nextcloud, Dropbox, OneDrive and Joplin Cloud.
      Full text search is available on all platforms to quickly find the information you need. The app can be customised using plugins and themes, and you can also easily create your own.
      The application is available for Windows, Linux, macOS, Android and iOS. A Web Clipper, to save web pages and screenshots from your browser, is also available for Firefox and Chrome. [laurent22/joplin]

      Joplin是一款免费开源的笔记和待办事项应用程序,能够处理大量按照笔记本组织的笔记。笔记是可搜索的,可以被复制、标记和修改,可以直接通过应用程序或通过您自己的文本编辑器进行修改。笔记采用Markdown格式。
      从Evernote导出的笔记可以导入到Joplin中,包括格式化内容(转换为Markdown)、资源(图像、附件等)以及完整的元数据(地理位置、更新时间、创建时间等)。普通Markdown文件也可以被导入。
      Joplin是“优先离线”的,这意味着您的所有数据始终保存在手机或计算机上。这确保了无论是否有互联网连接,您的笔记始终可访问。
      笔记可以通过端到端加密与多种云服务安全同步,包括Nextcloud、Dropbox、OneDrive和Joplin Cloud。
      所有平台均提供全文搜索,以快速找到所需信息。应用程序可以通过插件和主题进行自定义,您也可以轻松创建自己的插件和主题。
      该应用程序支持Windows、Linux、macOS、Android和iOS。还提供Web Clipper,可以从浏览器保存网页和屏幕截图,支持Firefox和Chrome。 [laurent22/joplin]

      resource

      mark

      cache

      Kamite

      Kamite is desktop software to aid learning Japanese through immersion in native media. It brings Japanese text from those media into a web browser interface, enabling lookup with pop-up dictionaries (such as Yomichan) and websites (such as DeepL Translate), and more. [fauu/Kamite]

      Kamite是一款桌面软件,旨在通过沉浸式媒体来帮助学习日语。它从这些媒体中提取日语文本,并在网页浏览器界面中显示,允许使用弹出式词典(如Yomichan)和网站(如DeepL Translate)等工具进行查询,支持更多的功能。 [fauu/Kamite]

      usage

      mpv --input-ipc-server=/./pipe/kamite-mpvsocket --sub-file="$2" --sid=2 --secondary-sid=1 --secondary-sub-visibility=no --save-position-on-quit "$1"
      

      annex

      Kdenlive

      Kdenlive is the acronym for KDE Non-Linear Video Editor. It works on Linux, Windows, macOS, and BSD. [kdenlive.org]

      Kdenlive是KDE非线性视频编辑器的缩写。它可以在Linux、Windows、macOS和BSD上运行。 [kdenlive.org]

      install

      # Arch
      sudo pacman -S kdenlive
      # Windows 10
      scoop install kdenlive
      

      usage

      • 导出 → 导出项目 → Generic → Matroska-H264/AAC → 嵌入字幕而不是合成到画面

      annex

      kdenlive

      KiCad

      KiCad is an open-source software suite for creating electronic circuit schematics, printed circuit boards (PCBs), and associated part descriptions. KiCad supports an integrated design workflow in which a schematic and corresponding PCB are designed together, as well as standalone workflows for special uses. KiCad also includes several utilities to help with circuit and PCB design, including a PCB calculator for determining electrical properties of circuit structures, a Gerber viewer for inspecting manufacturing files, a 3D viewer for visualizing the finished PCB, and an integrated SPICE simulator for inspecting circuit behavior.
      KiCad runs on all major operating systems and a wide range of computer hardware. It supports PCBs with up to 32 copper layers and is suitable for creating designs of all complexities. KiCad is developed by a volunteer team of software and electrical engineers around the world with a mission of creating free and open-source electronics design software suitable for professional designers. [kicad.org]

      KiCad是一个开源软件套件,用于创建电子电路原理图、印刷电路板(PCB)和相关部件描述。KiCad支持集成设计工作流程,其中原理图和相应的PCB一起设计,也支持用于特殊用途的独立工作流程。KiCad还包括多个实用工具,以帮助电路和PCB设计,包括用于确定电路结构电气特性的PCB计算器、用于检查制造文件的Gerber查看器、用于可视化完成的PCB的3D查看器,以及用于检查电路行为的集成SPICE模拟器。 KiCad支持所有主要操作系统和各种计算机硬件。它支持最多32层铜层的PCB,适合创建各种复杂度的设计。KiCad由全球的一支志愿者团队的软件工程师和电气工程师开发,旨在创建适合专业设计师的免费开源电子设计软件。 [kicad.org]

      install

      # Arch
      sudo pacman -S kicad
      # Windows 10
      scoop install kicad
      

      reference

      resource

      cache

      Kopia

      install

      # Windows 10
      scoop install kopiaui
      

      Kristall

      annex

      kristall

      Krita

      The origin of Krita can be traced to Matthias Ettrich’s at the 1998 Linux Kongress. Matthias wanted to show the ease with which it was possible to hack a Qt GUI around an existing application, and the application he chose to demo it with was GIMP. His patch was never published, but did cause problems with the GIMP community at the time.
      Not being in a position to work together, people within the KDE project decided to start their own image editor application Development focused on an application that was part of the KOffice suite, called KImage, by Michael Koch. Renamed to KImageShop, this was the start of Krita.
      At the 31st of May, 1999, the KImageShop project officially kicked off with a mail by Matthias Elter. The basic idea back then was to make KImageShop a GUI shell around ImageMagick. It was going to be a corba-based application with out-of-process filter plugins, compatible with GIMP plugins, which are also out-of-process, though of course not corba-based.
      The name KImageShop fell foul of trademark law in Germany, and KImageShop was renamed to Krayon, which also appeared to infringe on an existing trademark, so Krayon was finally renamed to Krita in 2002.
      Initial development was slow, but picked up strongly from 2003, resulting in the first public release with KOffice 1.4 in 2004. In 2005, Krita gained support for CMYK, Lab, YCbCr, XYZ color models and high bit depth channels, as well as OpenGL support.
      From 2004 to 2009, Krita was strongly focusing on being a generic image manipulation/painting application in the style of Photoshop or GIMP. Since 2009, the focus is squarely on painting: the Krita community aims to make Krita the best painting application for cartoonists, illustrators, and concept artists.
      From 2009 onwards, the Krita project started funding community members to work on Krita by way of student jobs, in addition to development funded through Google Summer of Code. This experiment has resulted in a huge jump in stability and performance.
      In 2012, the Krita community created the Krita Foundation, to provide more support for development. [krita.org]

      Krita的起源可以追溯到1998年Linux Kongress上的Matthias Ettrich。Matthias希望展示围绕现有应用程序制作Qt图形用户界面的简便性,他选择用GIMP进行演示。他的补丁从未发布,但当时确实造成了GIMP社区的一些问题。
      由于无法合作,KDE项目内的人决定开始他们自己的图像编辑应用程序开发,专注于KOffice套件中的一款名为KImage的应用程序,由Michael Koch开发。改名为KImageShop,这标志着Krita的开始。
      1999年5月31日,KImageShop项目通过Matthias Elter的邮件正式开启。那时的基本想法是将KImageShop作为ImageMagick的图形用户界面外壳。它将是一个基于CORBA的应用程序,带有进程外过滤器插件,兼容GIMP插件,后者同样是进程外的,当然不是基于CORBA的。
      KImageShop这个名称在德国违反了商标法,因此KImageShop被改名为Krayon,但Krayon似乎也侵犯了现有商标,因此Krayon最终在2002年更名为Krita。
      最初的开发进展缓慢,但从2003年开始迅速提升,导致2004年与KOffice 1.4一起发布了第一个公开版本。在2005年,Krita获得对CMYK、Lab、YCbCr、XYZ色彩模型和高位深通道以及OpenGL支持的支持。
      从2004年到2009年,Krita主要专注于成为一款类似于Photoshop或GIMP的一般图像处理/绘画应用程序。自2009年以来,重心明确转向绘画:Krita社区旨在使Krita成为漫画家、插画家和概念艺术家最佳的绘画应用程序。
      从2009年开始,Krita项目开始通过学生工作形式为社区成员提供资金,以参与Krita的开发,此外还有通过Google Summer of Code资助的开发。这一实验导致了稳定性和性能的大幅提升。
      在2012年,Krita社区创建了Krita基金会,以提供更多开发支持。 [krita.org]

      install

      # Arch
      sudo pacman -S krita
      # Windows 10
      scoop install krita
      

      reference

      asset

      libmidi

      MIDI player base on timidity and imgui, support soundfont(SF2) and software MIDI keyboard. [opencodewin/libmidi]

      基于Timidity和ImGui的MIDI播放器,支持SoundFont(SF2)和软件MIDI键盘。 [opencodewin/libmidi]

      annex

      LibreOffice

      LibreOffice is a freely available, fully-featured, open-source office productivity suite compatible with other major office suites and is available on various platforms. The native file format used is the Open Document Format (ODF). However, LibreOffice can also open and save documents in numerous other formats, including those used by various versions of Microsoft Office. [“LibreOffice - Getting Started Guide (25.2)”]

      LibreOffice是一个免费提供的、功能齐全的开源办公生产力套件,与其他主要办公套件兼容,并可在各种平台上使用。其使用的原生文件格式为开放文档格式(ODF)。不过,LibreOffice还可以以多种其他格式打开和保存文档,包括各个版本的Microsoft Office所使用的格式。 [“LibreOffice - Getting Started Guide (25.2)”]

      install

      # Arch
      sudo pacman -S libreoffice
      # Windows 10
      scoop install libreoffice
      

      config

      • LibreOffice → Tools → Options → Language and Locales
        • Language Of User interface → Chinese (simplified)
        • Formats
          • Locale setting → Chinese (simplified)
          • Default currency → Default - CNY

      Lite XL

      asset

      LocalSend

      LocalSend is a cross-platform app that enables secure communication between devices using a REST API and HTTPS encryption. Unlike other messaging apps that rely on external servers, LocalSend doesn’t require an internet connection or third-party servers, making it a fast and reliable solution for local communication. [localsend/localsend]

      LocalSend是一个跨平台应用,能够通过REST API和HTTPS加密实现设备之间的安全通信。与依赖外部服务器的其他消息应用不同,LocalSend不需要互联网连接或第三方服务器,因此成为本地通信的快速可靠解决方案。[localsend/localsend]

      install

      # Arch
      yay -S --noconfirm localsend-bin
      # Windows 10
      scoop install localsend
      

      Logseq

      resource

      mark

      cache

      LosslessCut

      The swiss army knife of lossless video/audio editing.
      LosslessCut aims to be the ultimate cross platform FFmpeg GUI for extremely fast and lossless operations on video, audio, subtitle and other related media files. The main feature is lossless trimming and cutting of video and audio files, which is great for saving space by rough-cutting your large video files taken from a video camera, GoPro, drone, etc. It lets you quickly extract the good parts from your videos and discard many gigabytes of data without doing a slow re-encode and thereby losing quality. There are also many more use cases. Everything is extremely fast because it does an almost direct data copy, fueled by the awesome FFmpeg which does all the grunt work. [mifi/lossless-cut]

      无损视频/音频编辑的瑞士军刀。
      LosslessCut旨在成为终极跨平台FFmpeg图形用户界面,以实现对视频、音频、字幕和其他相关媒体文件的极快无损操作。其主要功能是对视频和音频文件进行无损修剪和剪切,非常适合通过粗剪来自摄像机、GoPro、无人机等拍摄的大视频文件来节省空间。它让你能够快速提取视频中的好部分,并丢弃数GB的数据,而无需进行缓慢的重新编码,从而避免质量损失。还有许多其他用例。一切都非常快速,因为它几乎直接进行数据复制,得益于强大的FFmpeg处理所有繁重的工作。 [mifi/lossless-cut]

      install

      # Arch
      yay -S --noconfirm losslesscut-bin
      # Windows 10
      scoop install losslesscut
      

      LRCGET

      Utility for mass-downloading LRC synced lyrics for your offline music library.
      LRCGET will scan every files in your chosen directory for music files, then and try to download lyrics to a LRC files having the same name and save them to the same directory as your music files.
      LRCGET is the official client of LRCLIB service. [tranxuanthang/lrcget]

      用于批量下载与音乐同步的LRC歌词以供离线音乐库使用的工具。
      LRCGET将扫描您选择的目录中的所有文件,寻找音乐文件,然后尝试下载与之同名的LRC歌词文件,并将其保存到与音乐文件相同的目录中。
      LRCGET是LRCLIB服务的官方客户端。 [tranxuanthang/lrcget]

      install

      # Arch
      yay -S --noconfirm lrcget-bin
      

      annex

      lrcget

      MediaInfo

      install

      # Arch
      sudo pacman -S mediainfo mediainfo-gui
      # Windows 10
      scoop install mediainfo mediainfo-gui
      

      MKVToolNix

      install

      # Arch
      sudo pacman -S mkvtoolnix-cli mkvtoolnix-gui
      # Windows 10
      scoop install mkvtoolnix
      

      annex

      mkvtoolnix-gui

      MP3Gain

      install

      # Arch
      yay -S --noconfirm mp3gain
      

      wxMP3gain

      annex

      mp3gain

      MuPDF

      install

      # Arch
      sudo pacman -S mupdf
      # Windows 10
      scoop install mupdf
      

      MuseScore

      MuseScore is a free, open-source music notation software designed for creating, playing back, and printing sheet music. It runs on Windows, macOS, and Linux, and provides a user-friendly “What-You-See-Is-What-You-Get” editor for composing musical scores. The software supports unlimited staves, multiple voices per staff, dynamics, articulations, lyrics, chords, and many other notation elements. It also offers features like MIDI input/output, automatic part extraction and transposition, playback with a built-in sequencer and SoundFont sample library, and the ability to export scores to formats such as PDF, WAV, and MusicXML. MuseScore includes many templates and supports plugins to extend functionality. It is widely used by musicians, composers, and educators for creating and sharing scores, and has a large online community and score-sharing platform (musescore.com).
      In summary, MuseScore is a comprehensive, versatile, and free tool for music notation and composition. [musescore/MuseScore]

      MuseScore是一个免费、开源的乐谱软件,旨在创建、回放和打印乐谱。它可以在Windows、macOS和Linux上运行,并提供用户友好的“所见即所得”编辑器,用于作曲。该软件支持无限谱表、每个谱表多个声部、力度、发音符号、歌词、和弦以及许多其他乐谱元素。它还提供MIDI输入/输出、自动乐段提取和移调、内置音序器播放以及SoundFont样本库的功能,并能够将乐谱导出为PDF、WAV和MusicXML等格式。MuseScore包含许多模板,并支持插件以扩展功能。它广泛用于音乐家、作曲家和教育工作者,用于创作和分享乐谱,并拥有一个大型在线社区和乐谱分享平台(musescore.com)。
      总之,MuseScore是一个全面、多功能且免费的乐谱和作曲工具。 [musescore/MuseScore]

      install

      # Arch
      # yay -S --noconfirm musescore-bin muse-sounds-manager-bin
      # Windows 10
      scoop install musescore
      

      MusicBrainz Picard

      Picard is a cross-platform music tagger powered by the MusicBrainz database.
      Picard helps you organize your music collection by renaming your music files and sorting them into a folder structure exactly the way you want it. A variety of plugins are available and you can even write your own. Picard supports a wide range of audio formats and can also lookup an entire CD for you. [picard.musicbrainz.org]

      Picard是一个跨平台的音乐标签工具,基于MusicBrainz数据库。
      Picard可以通过重命名音乐文件并将它们整理到您想要的文件夹结构中,帮助您组织音乐收藏。有多种插件可供使用,您甚至可以编写自己的插件。Picard支持广泛的音频格式,并且还可以为您查找整张CD。 [picard.musicbrainz.org]

      annex

      NSZ

      install

      # Arch
      yay -S --noconfirm nsz
      
      # From source
      git clone --depth=1 https://github.com/nicoboss/nsz
      cd nsz
      uv venv
      .venv\Scripts\activate.bat
      uv pip install -r requirements-gui.txt 
      python nsz.py
      

      annex

      nsz

      OBS Studio

      install

      # Windows 10
      scoop install obs-studio
      

      config

      Windows 10

      1 2

      • OBS Studio → Settings → Output → Output Mode → Advanced
        • Streaming
          • Video Encoder → NVIDIA NVENC H.264
          • Encoder Settings
            Rate Control: Constant QP
            Constant QP: 16
            Keyframe interval: 2s
            Preset: P5: Slow (Good Quality)
            Tuning: High Quality
            Multipass Mode: Two Passed (Quarter Resolution)
            Profile: high
            	Look-ahead (Off)
            	Adaptive Quantization (On)
            B-Frames: 2
            
          • Recording → Video Encoder → (Use stream encoder)
          • Audio → Track1 → Audio Bitrate → 320
        • Audio → General → Sample Rate → 44.1 kHz
        • Video → General → Common FPS Values → 60

      usage

      • Select one on tab → Filters → Effect Filters → Add → Color Key.

      reference


      1. Advanced Recording Settings Guide

      2. Best OBS Settings for Streamers: Tips & Tricks

      ocenaudio

      install

      # Arch
      yay -S --noconfirm ocenaudio-bin
      # Windows 10
      scoop install ocenaudio
      

      annex

      ocenaudio

      OmegaT

      install

      # Windows
      scoop install omegat
      

      reference

      OSX-KVM

      install

      git clone --depth 1 --recursive https://github.com/kholia/OSX-KVM.git
      cd OSX-KVM
      git pull --rebase
      sudo modprobe kvm; echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs
      # AMD
      sudo cp kvm_amd.conf /etc/modprobe.d/kvm.conf
      sudo usermod -aG kvm $(whoami)
      sudo usermod -aG libvirt $(whoami)
      sudo usermod -aG input $(whoami)
      # Re-login
      
      ./fetch-macOS-v2.py
      dmg2img -i BaseSystem.dmg BaseSystem.img
      qemu-img create -f qcow2 mac_hdd_ng.img 100G
      ./OpenCore-Boot.sh
      

      reference

      PDF Arranger

      install

      # Arch
      sudo pacman -S pdfarranger
      # Windows 10
      scoop install pdfarranger
      

      pdfCropMargins

      install

      pipx install pdfCropMargins
      pdfcropmargins -v -s -u -gui file.pdf
      

      PDFsam

      annex

      pdfsam

      Photoshop

      install

      Arch

      1. Photoshop CC v19 installer for Linux
      2. error: sorry something went wrong during download photoshopCC-V19.1.6-2018x64.tgz
      3. Dropbox link to download photoshopCC-V19.1.6-2018x64.tgz is broken

      usage

      • 导入选项 → 选择文件 → file.csv → 替换先有的数据组 → 确定
      • 储存选项 → 选择文件夹 → output\, 文件命名 → 文档名称+下划线+数据组编号 → 确定

      PureRef

      install

      # Arch
      yay -S --noconfirm pureref
      # Windows 10
      scoop install pureref
      

      usage

      • Ctrl+RightCtrl+DownCtrl+f → Resize by mouse wheel → Ctrl+Shift+r

      resource

      cache

      PuTTY

      install

      # Arch
      yay -S --noconfirm putty-git
      # Windows 10
      scoop install putty
      

      PyGlossary

      install

      # uv (Windows 10)
      uv venv .pyglossary
      .pyglossary\Scripts\activate.bat
      uv pip install pyglossary lxml beautifulsoup4
      mklink %USERPROFILE%\.local\bin\pyglossary.exe %CD%\.pyglossary\Scripts\pyglossary.exe
      deactivate.bat
      
      # zpy (Arch)
      mkdir .pyglossary
      cd pyglossary
      envin
      pipi pyglossary lxml beautifulsoup4 pygobject
      vlauncher ~/Usr/Shell/.pyglossary pyglossary ~/.local/bin/pyglossary
      da8
      

      usage

      pyglossary
      

      annex

      pyglossary

      QEMU

      QEMU is a generic and open source machine emulator and virtualizer.
      When used as a machine emulator, QEMU can run OSes and programs made for one machine (e.g. an ARM board) on a different machine (e.g. your own PC). By using dynamic translation, it achieves very good performance.
      When used as a virtualizer, QEMU achieves near native performance by executing the guest code directly on the host CPU. QEMU supports virtualization when executing under the Xen hypervisor or using the KVM kernel module in Linux. When using KVM, QEMU can virtualize x86, server and embedded PowerPC, 64-bit POWER, S390, 32-bit and 64-bit ARM, and MIPS guests. [qemu.org]

      QEMU 是一个通用的开源机器仿真器和虚拟化工具。
      作为机器仿真器使用时,QEMU 可以在一台机器(例如,ARM 板)上运行为另一台机器(例如,您的个人计算机)制作的操作系统和程序。通过使用动态翻译,它实现了非常好的性能。
      作为虚拟化工具使用时,QEMU 通过直接在主机 CPU 上执行来宾代码来实现接近本地的性能。在使用 Xen 虚拟机监控器或 Linux 中的 KVM 内核模块时,QEMU 支持虚拟化。在使用 KVM 时,QEMU 可以虚拟化 x86、服务器和嵌入式 PowerPC、64 位 POWER、S390、32 位和 64 位 ARM 和 MIPS 来宾。[qemu.org]

      install

      sudo pacman -S qemu virt-manager virt-viewer dnsmasq vde2 bridge-utils openbsd-netcat
      sudo pacman -S dmidecode
      

      usage

      1

      sudo systemctl enable --now libvirtd
      systemctl status libvirtd
      sudo usermod -aG libvirt,kvm $(whoami)
      
      grep kvm
      sudo modprobe kvm
      # AMD
      sudo modprobe kvm_amd
      # AMD
      echo -e "kvm\nkvm_amd" | sudo tee /etc/modules-load.d/kvm.conf
      
      virsh net-list --all
      sudo virsh net-autostart default
      sudo virsh net-start default
      
      • QEMU/KVM → Add
        1. Choose how you would like to install the operating system → Manual install.
        2. Choose the operating system you are installing → Microsoft Windows 10.
        3. Create a disk image for the virtual machine → 100G.
        4. Ready to begin the installtion → Name → Win10.
      sudo qemu-system-x86_64 \
        -enable-kvm \
        -m 2048 \
        -cpu host \
        -smp 2 \
        -cdrom <path_to>/windows10_x64_cn.iso \
        -boot d \
        -drive file=/var/lib/libvirt/images/win10.qcow2,format=qcow2 \
        -net nic -net user \
        -name "windows10 VM"
      
      • TigerVNC viewer → VNC server → localhost:5900 → Connect.

      reference


      1. How to Install and Use QEMU/KVM on Arch Linux | Siberoloji

      qimgv

      install

      # Arch
      yay -S --noconfirm qimgv
      # Windows 10
      scoop install qimgv
      

      QOwnNotes

      resource

      cache

      annex

      qownnotes

      QtScrcpy

      # Windows 10
      scoop install qtscrcpy
      

      usage

      • 手机 → 设置
        1. 连接 → WLAN → 当前网络 → 获得本机IP地址
        2. 关于手机 → 版本号 → 点击x7
        3. 系统 → 开发者选项
          • USB调试 (On)
            • 是否允许USB调试 (确定)
          • (可选) 无线调试 (On)
            • (可选) 一律允许使用这台计算机进行调试 (允许)

      QuiteRSS

      install

      # Arch
      yay -S --noconfirm quiterss
      # Windows 10
      scoop install quiterss
      

      config

      • QuiteRSS
        • Menu
          • View
            • Show/Hide
              • Feeds Toolbar (On)
              • News Toolbar (On)
              • Browser Toolbar (On)
              • Status Bar (On)
            • Browser Position → Right
          • Feeds
            • Show Indentation (Off)
            • Sort by Name
          • News → Propertie bar
            • Title (On)
            • Published (On)
        • Options
          • General
            • Show splash screen on startup (Off)
            • Automatically check for updates (Off)
          • System Tray
            • Single click instead of double click for show window (On)

      qView

      install

      # Arch
      yay -S --noconfirm qview
      # Windows 10
      scoop install qview
      

      Raspberry Pi Imager

      install

      # Arch
      sudo pacman -S rpi-imager
      # Windows 10
      scoop install raspberry-pi-imager
      

      usage

      • Raspberry Pi Imager
        1. Raspberry Pi Device → Choose Device → Raspberry Pi 4
        2. Operating System → Choose OS → Other general-purpose OS → Ubuntu → Ubuntu Server 22.04.4 LTS (64-bit)
        3. Storage → Choose Storage → <your_sdcard>
        4. Next → Edit settings
        • General
          • Set hostname → ubuntu22
          • Set username and password
            • Username → <user>
            • Password → <password>
          • Configure wireless LAN
            • SSID → <your_wifi>
            • Password → <wifi_password>
          • Wireless LAN country → CN
          • Set locale settings
            • Time zone → Asia/Shanghai
            • Keyboard layout → us
        • Services → Enable SSH (On) → Use password authentication
        • Options
          • Eject media when finished (On)
          • Enable telemetry (Off)

      RClone Manager

      install

      # Arch
      yay -S --noconfirm rclone-manager
      # Windows 10
      scoop install rclone-manager
      

      Rime

      Rime (from rime.im) is an open-source, highly customizable input method engine primarily designed for typing Chinese characters. It supports various Chinese input schemes such as Pinyin, Zhuyin, Cangjie, and others. Users can switch easily among different input methods and configure them to their preference using an intuitive menu system. Rime is praised for its flexibility, extensibility, and innovative design, enabling users to tailor input experiences to their unique needs. It is widely regarded as a powerful tool for efficient and elegant Chinese text input across multiple platforms.
      In summary, Rime is a modular Chinese input method framework that offers diverse input schemes and customization, enabling smooth and personalized Chinese typing experiences. [perplexity.ai]

      Rime(来自rime.im)是一个开源、高度可定制的输入法引擎,主要设计用于输入中文字符。它支持多种中文输入方案,如拼音、注音、仓颉等。用户可以通过直观的菜单系统轻松切换不同的输入方式,并根据个人喜好进行配置。Rime因其灵活性、可扩展性和创新设计而受到赞誉,使用户能够根据独特需求调整输入体验。它被广泛视为一个强大的工具,能够在多个平台上高效优雅地输入中文文本。
      总之,Rime是一个模块化的中文输入法框架,提供多样的输入方案和自定义功能,实现流畅和个性化的中文输入体验。[perplexity.ai]

      install

      1

      # Arch
      sudo pacman -S fcitx5-im fcitx5-gtk fcitx5-qt fcitx5-rime
      
      # Windows 10
      scoop install rime
      

      config

      # Arch
      vim ~/.xprofile
      
      export GTK_IM_MODULE="fcitx"
      export QT_IM_MODULE="fcitx"
      export XMODIFIERS="@im=fcitx"
      export INPUT_METHOD="fcitx"
      export XIM="fcitx"
      export XIM_PROGRAM="fcitx"
      export SDL_IM_MODULE="fcitx"
      export GLFW_IM_MODULE="ibus"
      

      Then reboot.

      • Xfce → Setttings → Fcitx 5 Configuration
        • Input Method → Available Input Method → Select Rime → Move to left.
        • Global Options → Trigger Input Method → Shift → Apply.

      Personal do

      # Arch
      mkdir -p ~/.local/share/fcitx5/rime
      mkdir -p ~/Usr/Source/rime
      cd ~/Usr/Source/rime
      git clone --depth=1 https://github.com/iDvel/rime-ice
      
      # Windows 10
      mkdir "%USERPROFILE%\Usr\Source\rime"
      cd "%USERPROFILE%\Usr\Source\rime"
      git clone --depth=1 https://github.com/iDvel/rime-ice
      

      reference

      cross-reference

      extra

      resource

      annex

      rime

      rime_init_windows.mp4, (bilibili


      1. Can’t awaken the input method(fcitx5)

      Shortcut

      Shotcut is a free, open source, cross-platform video editor for Windows, Mac and Linux. Major features include support for a wide range of formats; no import required meaning native timeline editing; Blackmagic Design support for input and preview monitoring; and resolution support to 4k. [shotcut.org]

      Shotcut是一个免费、开源、跨平台的视频编辑器,适用于Windows、Mac和Linux。主要功能包括支持多种格式;无需导入,意味着本地时间线编辑;支持Blackmagic Design以进行输入和预览监控;以及支持高达4K的分辨率。 [shotcut.org]

      install

      # Arch
      sudo pacman -S shortcut
      # Windows 10
      scoop install shortcut
      

      Sigil

      Sigil is a free, open source, multi-platform ebook editor that uses Qt6 (and QtWebEngine). It is designed to edit books in ePub format (both ePub 2 and ePub 3). [Sigil-Ebook/Sigil]

      Sigil是一个免费、开源的多平台电子书编辑器,使用Qt6(和QtWebEngine)。它旨在编辑ePub格式的书籍(包括ePub 2和ePub 3)。 [Sigil-Ebook/Sigil]

      install

      # Arch
      sudo pacman -S sigil
      # Windows 10
      scoop install sigil
      

      reference

      Sioyek

      install

      # Arch
      sudo pacamn -S sioyek
      # Windows 10
      scoop install sioyek
      

      reference

      resource

      extra

      Snipaste

      reference

      DB Browser for SQLite

      install

      # Arch
      sudo pacman -S sqlitebrowser
      # Windows 10
      scoop install sqlitebrowser
      

      Stirling-PDF

      install

      # Arch
      yay -S --noconfirm stirling-pdf-bin
      # Windows 10
      scoop install stirling-pdf
      

      reference

      Subtitle Edit

      Subtitle Edit is a free and open-source software tool used to create, edit, adjust, and synchronize subtitles for videos. It supports over 250 subtitle formats including popular ones like SubRip (SRT), Timed Text, SubStation Alpha, and more. The software allows users to manually edit subtitle text, fix grammar mistakes, merge and split subtitles, translate subtitles into different languages, and sync subtitle timing with the video. It also provides advanced features such as waveform and spectrogram audio visualization that help with precise subtitle synchronization.
      Subtitle Edit supports playing videos while editing subtitles, making it easier to match the text accurately to the audio. It offers tools like spell check, find and replace, subtitle comparison, Google translate integration, and batch processing. It is available primarily for Windows, but also works on Linux via Mono, and is translated into many languages.
      The software is widely used by professional subtitlers and content creators for producing accurate and polished subtitles for videos. It has been actively developed and maintained since 2001 and is hosted on GitHub as an open-source project.
      In summary, Subtitle Edit is a comprehensive subtitle editing tool that offers powerful features for subtitle creation, editing, syncing, and translating, aimed at improving the accessibility and quality of video content through subtitles. [perplexity.ai]

      Subtitle Edit是一个免费和开源的软件工具,用于创建、编辑、调整和同步视频字幕。它支持超过250种字幕格式,包括如SubRip(SRT)、Timed Text、SubStation Alpha等流行格式。该软件允许用户手动编辑字幕文本,修正语法错误,合并和拆分字幕,将字幕翻译成不同语言,并与视频同步字幕时间。它还提供了先进的功能,如波形图和声谱图音频可视化,帮助精确同步字幕。
      Subtitle Edit支持在编辑字幕时播放视频,使文本与音频准确匹配变得更加容易。它提供了拼写检查、查找和替换、字幕比较、Google翻译集成和批量处理等工具。它主要在Windows上可用,但也可以通过Mono在Linux上运行,并且被翻译成多种语言。
      该软件广泛用于专业字幕制作人和内容创作者,为视频制作准确和精致的字幕。自2001年起,它一直在积极开发和维护,并作为开源项目托管在GitHub上。
      总之,Subtitle Edit是一个全面的字幕编辑工具,提供强大的功能用于字幕的创建、编辑、同步和翻译,旨在通过字幕提高视频内容的可及性和质量。[perplexity.ai]

      install

      # Arch
      yay -S --noconfirm subtitleedit
      # Windows 10
      scoop install subtitleedit
      

      usage

      • Subtitle Edit → Auto-translate → Select Ollama or LM Studio → Translate

      annex

      Tabby

      resource

      mark

      Tag Editor

      install

      # Arch
      yay -S --noconfirm tageditor
      # Windows 10
      scoop install tageditor
      

      TagScanner

      install

      # Arch
      yay -S --noconfirm tagscanner
      # Windows 10
      scoop install tagscanner
      

      annex

      tagscanner

      TagSpaces

      TagSpaces is a free and open-source platform for organizing, tagging, and managing your local files. It runs completely offline, with no need for cloud services, internet connection, or vendor lock-in. Available for Windows, Linux, and macOS, it also includes a browser extension (Web Clipper) for Firefox, Edge, and Chrome to capture online content as local files. [tagspaces/tagspaces]

      TagSpaces是一个免费和开源的平台,用于组织、标记和管理你的本地文件。它完全离线运行,不需要云服务、互联网连接或厂商绑定。适用于Windows、Linux和macOS,它还包括一个浏览器扩展(Web Clipper),可用于Firefox、Edge和Chrome,以将在线内容捕获为本地文件。 [tagspaces/tagspaces]

      install

      # Arch
      yay -S --noconfirm tagspaces-bin
      # Windows 10
      scoop install tagspaces
      

      talking-head-anime-4-demo

      install

      git clone --depth=1 https://github.com/pkhungurn/talking-head-anime-4-demo
      cd talking-head-anime-4-demo
      uv venv
      .venv\Scripts\activate.bat
      uv pip install poetry
      cd poetry
      poetry install
      

      usage

      cd ..
      python src\tha4\app\character_model_ifacialmocap_puppeteer.py
      

      annex

      talking-head-anime-4-demo

      Thorium

      install

      # Arch
      yay -S --noconfirm thorium-reader-bin
      # Windows 10
      scoop install thorium-reader
      

      config

      • Thorium → Catalogs → Add an OPDS feed:
        Name: <name>
        Link: http://<your_host>/opds
        

      annex

      thorium-reader

      Thunderbird

      Thunderbird is a free, open-source, cross-platform email client and personal information manager developed by MZLA Technologies Corporation, a subsidiary of the Mozilla Foundation. It allows users to manage multiple email accounts, newsgroups, news feeds, and chat services in one application. Thunderbird also includes features like a calendar, contact book, advanced message filtering, junk mail (spam) filtering, and support for email encryption standards such as OpenPGP and S/MIME. It is highly customizable through add-ons and supports over 65 languages. Thunderbird runs on Windows, macOS, Linux, and has a mobile version for Android. It is designed to give users control and ownership over their email with a focus on privacy and security. [perplexity.ai]

      Thunderbird是一个免费、开源、跨平台的电子邮件客户端和个人信息管理器,由Mozilla基金会的子公司MZLA Technologies Corporation开发。它允许用户在一个应用程序中管理多个电子邮件帐户、新闻组、新闻订阅和聊天服务。Thunderbird还包括日历、通讯录、高级消息筛选、垃圾邮件过滤以及对OpenPGP和S/MIME等电子邮件加密标准的支持等功能。它通过插件高度可定制,并支持超过65种语言。Thunderbird可在Windows、macOS、Linux上运行,并有适用于Android的移动版。其设计旨在让用户对自己的电子邮件拥有控制权和所有权,并关注隐私和安全。 [perplexity.ai]

      install

      # Arch
      sudo pacman -S thunderbird thunderbird-i18n-zh-cn
      # Windows 10
      scoop install thunderbird
      

      usage

      Enable POP and IMAP

      • IMAP server: imap..com, port 993

      • SMTP server: smtp..com, port 465/587

      • Outlook → Settings → Mail → Forwarding and IMAP → POP and IMAP Outlook → Account → My Microsoft account → Privacy → Apps and services that can access your data

      • Yandex Mail → Settings → All settings → Email clients

      • QQ邮箱 → 设置 → 账号 → POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务

      • 网易邮箱 → 设置 → POP3/SMTP/IMAP

      Message Filters

      • Thunderbird → More → Tools → Message Filters
        1. Filters for your@email.com
        2. New …
          1. Filter name: blacklist
          2. Match all of the following → Add (all you want to match) → For example, From contains example01@spam.com
          3. Perform these actions → Set Junk Status to Junk or Move Message to Junk on your@email.com
          4. OK

      TightVNC

      install

      # Arch
      yay -S --noconfirm tightvnc
      # Windows 10
      scoop install tightvnc
      

      usage

      tvnviewer <your_host>::5901 -password=<vncuser_passwd>
      

      Umi-OCR

      install

      # Arch
      yay -S --noconfirm umi-ocr-bin
      # Windows 10
      scoop install umi-ocr-paddle
      

      config

      • Umi-OCR
        • Screenshot OCR
          • Settings → Hotkey → Ctrl+Alt+u
        • Global Settings
          • Launch on startup (On)

      Unison

      install

      # Windows 10
      scoop install unison
      

      config

      subl ~/.unison/<profile>.prf
      
      # Unison preferences
      root = <path_to_first_directory>
      root = <path_to_second_directory>
      

      Upscayl

      Free and Open Source AI Image Upscaler.
      Upscayl lets you enlarge and enhance low-resolution images using advanced AI algorithms. Enlarge images without losing quality. [upscayl/upscayl]

      免费开源AI图像放大器。
      Upscayl让你可以使用先进的AI算法放大和增强低分辨率图像。放大图像时不会失去质量。 [upscayl/upscayl]

      install

      # Windows 10
      scoop install upscayl
      

      Ventoy

      Ventoy is an open source tool to create bootable USB drive for ISO/WIM/IMG/VHD(x)/EFI files. With ventoy, you don’t need to format the disk over and over, you just need to copy the image files to the USB drive and boot it. You can copy many image files at a time and ventoy will give you a boot menu to select them. You can also browse ISO/WIM/IMG/VHD(x)/EFI files in local disk and boot them. x86 Legacy BIOS, IA32 UEFI, x86_64 UEFI, ARM64 UEFI and MIPS64EL UEFI are supported in the same way. Both MBR and GPT partition style are supported in the same way. Most type of OS supported(Windows/WinPE/Linux/Unix/ChromeOS/Vmware/Xen…) 1200+ ISO files are tested. 90%+ distros in distrowatch.com supported. [ventoy/Ventoy]

      Ventoy是一个开源工具,用于创建可启动的USB驱动器,以支持ISO/WIM/IMG/VHD(x)/EFI文件。
      使用Ventoy,你不需要反复格式化磁盘,只需将映像文件复制到USB驱动器并启动即可。你可以一次复制多个映像文件,Ventoy会为你提供一个启动菜单以供选择。
      你还可以浏览本地磁盘上的ISO/WIM/IMG/VHD(x)/EFI文件并启动它们。
      x86传统BIOS、IA32 UEFI、x86_64 UEFI、ARM64 UEFI和MIPS64EL UEFI都以相同方式支持。
      MBR和GPT分区风格也以相同方式支持。
      大多数类型的操作系统均被支持(Windows/WinPE/Linux/Unix/ChromeOS/Vmware/Xen…)。
      测试了1200多个ISO文件。支持distrowatch.com上90%以上的发行版。 [ventoy/Ventoy]

      install

      # Arch
      yay -S --noconfirm ventoy-bin
      # Windows 10
      scoop install ventoy
      

      annex

      ventoy

      video-compare

      install

      # Arch
      yay -S --noconfirm video-compare
      # Windows 10
      scoop install video-compare
      

      VideoSubFinder

      The main purpose of this program is to provide functionality for extract hardcoded subtitles (hardsub) from video.
      It provides two main features:

      1. Autodetection of frames with hardcoded text (hardsub) on video with saving info about timing positions.
      2. Generation of cleared from background text images, which allows with usage of OCR programs (like FineReader, Subtitle Edit, Google Drive) to generate complete subtitles with original text and timing. [sourceforge.net/projects/videosubfinder]

      这个程序的主要目的是提供从视频中提取硬编码字幕(hardsub)的功能。
      它提供两个主要功能:

      1. 自动检测视频中带有硬编码文本(hardsub)的帧,并保存关于时间位置的信息。
      2. 生成去背景的清晰文本图像,这使得使用OCR程序(如FineReader、Subtitle Edit、Google Drive)能够生成包含原始文本和时间的完整字幕。 [sourceforge.net/projects/videosubfinder]

      install

      Windows 10

      1. Get VideoSubFinder form SourceForge.
      2. Decompress VideoSubFinder_*.zip to VideoSubFinder.
      3. Run VideoSubFinderWXW.exe.

      Arch

      yay -S --noconfirm videosubfinder
      

      config

      • VideoSubFinder → Settings → Parameters Influencing Image Processing (Optional):
        FFMPEG Video Devices: cuda
        Use CUDA GPU Acceleration: On
        
      1. File → Open Video.
      2. Run Search → When shows subtitle, Stop Search → Modify the ScanBox.
      3. Begin Time → 00:00:00:000 → Run Search.
      4. Output will be on ./RGBImages/.

      cross-reference

      extra

      annex

      VirtualBox

      install

      # Windows
      scoop insta virtualbox
      

      usage

      • File → Preferences → Input → Virtual Machine → Host Key Combination → None or Other1.
      • Target Machine → Machine → Settings → General → Advanced → Shared Clipboard → Bidirectional → Start Machine.
      • Target Machine → Machine → Settings → USB → Enable USB Controller → USB 3.0 (xHCI) Controller (On) → Add → Generic USB3.0 Card Reader → OK.
      • Target Machine → Machine → Settings → Shared Folders → Add:
        Folder Path: C:\mnt
        Folder Name: mnt
        Auto-mount (On)
        Make Permanent (On)
        
      • Devices → sf_mnt → 右键 → Thunar Root → 目标文件 → 右键 → Extract.

      1. Virtual Box: How to Increase Disk Size (Windows)

      Weixin

      usage

      我的 → 服务 → 钱包 → 支付设置 → 自动续费

      wxapp

      • 用户 → 账号设置 → 基本设置 → 小程序名称
      • 基础功能 → 客服
        • 微信客服
        • 小程序客服
      • 支付与交易 → 交易保障 → 交易保障标
      • 支付与交易 → 交易组件
        • 基础交易
        • 小程序视频号交易组件
      • 支付与交易 → 物流服务
        • 无忧退货(运费险)
        • 查询组件
        • 物流消息
      • 开发与服务 → 开发管理
        • 消息推送
        • 安全键盘

      Wez’s Terminal

      install

      # Arch
      sudo pacman -S wezterm
      # Windows 10
      scoop install wezterm
      

      setting

      # Arch
      ~/.config/wezterm/wezterm.lua
      # Windows 10
      %USERPROFILE%\scoop\apps\wezterm\current\wezterm.lua
      

      reference

      annex

      color_vanta color_visiblue color_visibone

      XnConvert

      install

      # Arch
      yay -S --noconfirm xnconvert
      # Windows 10
      scoop install xnconvert
      

      config

      • XnConvert → Settings Load → format settings → Write
        • JPEG1
          Quality: 90
          Progressive: On
          Optimixr Huffman table: On
          DCT Method: Float (best but slowest)
          Use estimated quality (when possible): Off
          

      1. XnConvert使用JPG压缩时“使用估计质量”与“优化哈夫曼表”等选项含义

      YOGA Image Optimizer

      install

      # Pip
      uv pip install yoga-image-optimizer
      

      YomiNinja

      reference

      resource

      cache

      YouTube Music

      install

      # Arch
      yay -S --noconfirm youtube-music-bin
      # Windows 10
      scoop install youtube-music
      

      Zeal

      install

      # Arch
      sudo pacman -S zeal
      # Windows 10
      scoop install zeal
      

      config

      Zeal → Edit → Preferences → Docset storage → <path_to>/docsets

      usage

      • Zeal → Tools → Docsets
        • For offical docsets → Available → Refresh → Select one document → Download
        • For 3rd docsets → Installed → Add feed → Fill Feed URL → OK

      You can get Feed URL from Zeal User Contributions & Cheat Sheets.

      cross-reference

      extra

      asset

      annex

      zeal

      opt_Browser

      cross-reference

      mark

      extra

      cache

      resource

      mark

      extra

      cache

      Brave / Chrome

      config

      • Visit brave://flags/#enable-parallel-downloading → Parallel downloading → Enabled.

      floccus bookmarks sync

      usage

      1. 打开 … 新建账户 → WebDav分享.
        WebDAV URL: <webdev_url>
        用户名: <user>
        密码: <password>
        
      2. 下一步
        服务器详细信息 → 书签路径 → floccus/bookmarks.xbel
        文件夹映射 → 本地文件夹 → /书签栏/
        同步间隔 → 1d
        嵌套账户 → 在其他帐户同步中包括此帐户的本地
        文件夹 → 保存
        
      3. 打开 … WEBDAV → 行为(推送) → 自动同步 (Off).

      Imagus

      config

      Imagus → Options → Enabled when holding ctrl.

      Immersive Translate

      1 2 3

      config

      1. Immersive Translate → Developer settings → Enable Beta Testing Features
      2. Translation Services → Custom API → Edit → API URL → http://127.0.0.1:11434 → Verify service

      1. Immersive Translate - Custom Interface Translation

      2. Translation Services API Request - Ollama

      3. 本地部署 Qwen 翻译网页

      Kokoro TTS Reader - Chrome Extension

      A Chrome extension for text-to-speech using the Kokoro TTS API, allowing you to listen to selected text from any webpage with background audio playback. [VJ-Ranga/Right-Click-TTS-Reader-V3]

      一个用于文本转语音的Chrome扩展,使用Kokoro TTS API,允许您从任何网页上收听选定的文本,并支持后台音频播放。 [VJ-Ranga/Right-Click-TTS-Reader-V3]

      config

      • Kokoro TTS Reader → Settings
        • Kokoro API URL → http://localhost:8880/v1
        • Chunk Size (characters) → 1500 (Higher-end systems)

      annex

      LibreWolf

      install

      # Arch
      sudo pacman -S librewolf
      sudo pacman -S speech-dispatcher
      # Windows 10
      scoop install librewolf
      

      config

      • LibreWolf
        • Settings
          • LibreWolf -Browser Behavior - Enable Firefox Sync (On) - Allow userChrome.css customization (On)
            • Useful links
              1. Open user profile directory.
              2. Create chrome/userChrome.css.
              3. Copy from https://github.com/gnuunixchad/dotfiles/blob/master/.mozilla/chrome/userChrome.css.
          • General
            • Network Settings → Settings → No Proxy1
            • Tabs
              • Open links in tabs instead of new windows (On)
              • Show an image preview when you hover on a tab (On)
            • Browsing
              • Enable Picture-in-Picture video controls (On)
      • More tools → Customize Toolbar → Density → Compact.
      • Address bar → about:configtoolkit.legacyUserProfileCustomizations.stylesheets → true.

      1. Firefox can’t load websites but other browsers can

      Linguist

      config

      • Linguist → Preferences
        • Translation preferences
          1. Custom translators → Manage translators → Add1:
            • Name → LibreTranslator
            • Code → Copy from https://github.com/translate-tools/linguist-translators/blob/master/translators/LibreTranslator.js. Change apiPath = 'https://translate.terraprint.co/translate' to apiPath = 'http://<your_host>:5000/translate'.
          2. Translator module → LibreTranslator
        • The full page translation
          • Hotkeys → Shift+Alt+z
          • Enable popup with original text (On)
        • Export config

      reference

      resource

      cache


      1. Offline translation - translate-tools/linguist

      linkding extension

      config

      1. linkding → Settings → Integrations → Integrations → REST API → <copy_from>
      2. linkding extension → Configuration
        • Base URL → http://<your_host>:8002
        • API Authentication Token → <paste_to>

      Prevue Popup

      annex

      prevue-popup

      uBlock Origin

      config

      • uBlock Origin → 设置 → 添加“屏蔽元素”到右键菜单 (Off)

      Yomitan Dictionaries

      A comprehensive collection of Japanese and Chinese dictionaries for Yomitan (formerly Yomichan), including terms, kanji/hanzi info, frequency, and variants with both monolingual and bilingual dictionaries available.
      This repository contains dictionaries for Yomitan, a Japanese dictionary browser extension for Chrome, Firefox, and Edge. The repository was originally created to host the dictionaries I created, but I have since adapted this repository to serve as a hub for other dictionaries as well. [MarvNC/yomitan-dictionaries]

      一套全面的日汉词典集合,用于Yomitan(前身为Yomichan),包括术语、汉字/汉字信息、词频和变体,同时提供单语和双语词典。
      该库包含Yomitan的词典,这是一个适用于Chrome、Firefox和Edge的日语词典浏览器扩展。该库最初创建是为了存放我创建的词典,但我已经调整这个库,使其也可以作为其他词典的中心。 [MarvNC/yomitan-dictionaries]

      config

      • Yomitan → Yomitan Settings
        • General → Language → English (en)
        • Appearance → Configure collapsible dictionaries → <the_dict> → Collapsed

      reference

      asset

      resource

      cache

      opt_andriod

      cross-reference

      mark

      later

      extra

      cache

      resource

      mark

      extra

      later

      cache

      Amaze

      usage

      • 新建 → 网盘 → SMB共享连接 → 使用自定义IP
        连接名称: SMBGPNAME
        服务器互联网协议地址: <your_host>
        用户名: <user>
        密码: <password>
        
      • 新建 → 网盘 → SCP/SFTP链接

      AndBible

      usage

      • 下载文件 → 语言(中文) → CNVs, CUVs, ZhEnglish, ZhHanzi.

      AnkiDroid: Flashcards

      config

      • Settings → Sync → AnkiWeb
        • Custom sync server → http://<your_host>:<port>
        • AnkiWeb account → Used <username>, <password> set in Anki Sync Server’s environment SYNC_USER

      reference

      cross-reference

      cache

      App Manager

      usage

      • 长按应用 → 点击其他应用 → 备份/还原 → APK文件 → 备份.
      • 设置 → 备份/还原 → 备份位置 → 添加 → 前往 → /0/Download/<dir_name> → 勾选新位置 → 保存.

      F-Droid

      reference

      FairEmail

      usage

      FairEmail → 主要 → 添加或更改账户 → 向导 → IMAP账户 → 接受电子邮件IMAP POP3 → 添加 → IMAP → 服务提供商:自定义 … 检查 … 保存

      KOReader

      config

      • KOReader → Search → OPDS catalog → Add
        • Catalog name: dir2opds
        • Catalog URL: <your_host>:8080

      reference

      Librera Reader

      usage

      • Librera FD → Network → Add
        URL: http://<your_host>:8080/opds
        Name: Calibre Library
        

      Round Sync

      usage

      1. Setting
        • Remotes → Add → Webdav → Next.
        • Export config → /0/Download/<dir> → Save.
      2. <webdav><sync_folder> → More → Sync → Sync local to remote.

      Termux

      pkg update
      pkg upgrade
      

      About Username

      Via SSH

      pkg install openssh
      passwd
      sshd
      

      On PC:

      ssh -p 8022 <any_username>@<your_host>
      

      Then you can use your PC’s keyboard and clipboard.

      Termux-setup-storage

      termux-setup-storage
      

      Enable Linux file system

      1 2

      pkg install proot
      termux-chroot
      ls /usr
      

      install Opts

      pkg install \
        7zip \
        aspell \
        aspell-en \
        atuin \
        bat \
        carapace \
        chafa \
        chezmoi \
        curl \
        dictd \
        eza \
        fastfetch \
        fd \
        fzf \
        gh \
        git \
        glow \
        gnupg \
        jq \
        lazygit \
        less \
        neovim \
        openssh \
        pass \
        python \
        python-pip \
        ripgrep \
        rust \
        sdcv \
        starship \
        tealdeer \
        tmux \
        translate-shell \
        uv \
        vim \
        wget \
        yazi \
        yq \
        zoxide \
        zsh \
        zsh-completions
        # agg \
        # asciinema \
        # cmus \
        # newsboat \
      
      # Cargo
      cargo install --force \
        eva \
        grex \
        pipe-rename \
        thumbs
        # thes
      # Pip
      pip install \
        subliminal
      

      Install Nerd Font

      3

      mv <font> ~/.termux/font.ttf
      termux-reload-settings
      

      Configure Keyboard

      4 5

      cp ~/.termux/termux.properties ~/.termux/termux.properties.bak
      vim ~/.termux/termux.properties
      
      extra-keys = [[ \
        {key: TAB, popup: KEYBOARD}, \
        {key: ESC, popup: '<'}, \
        {key: CTRL, popup: '['}, \
        {key: ALT, popup: '\{'}, \
        {key: 'BACKSLASH', popup: '|'}, \
        {key: '_', popup: '='}, \
        {key: UP, popup: PGUP}, \
        {key: DOWN, popup: PGDN}, \
        {key: LEFT, popup: HOME}, \
        {key: RIGHT, popup: END} \
      ]]
      

      Input Method

      About Desktop Environment

      PRoot Distro

      pkg install proot-distro
      proot-distro install archlinux
      proot-distro list
      proot-distro login archlinux
      

      reference

      cross-reference

      mark

      troubleshoot


      1. Termux is not FHS compliant

      2. Access Termux from a file manager

      3. [Info] How to setup nerd font in order to work lsd properly in Termux(Android)

      4. Can I hide this keyboard? I have a physical one attached

      5. Disabling the up-arrow key rebinding?

      setup-mason-for-termux

      install

      pkg install which
      curl -o install-in-mason  https://raw.githubusercontent.com/Amirulmuuminin/setup-mason-for-termux/main/install-in-mason
      chmod +x install-in-mason
      ./install-in-mason lua-language-server
      ./install-in-mason marksman
      ./install-in-mason stylua
      ./install-in-mason texlab
      
      vim ./install-in-mason
      
      # Modify this part
      # Step 1: Install the package using apk
      echo "Installing $PACKAGE_NAME..."
      if pkg install -y "$PACKAGE_NAME"; then
        echo "$PACKAGE_NAME installed via pkg successfully."
      elif command -v cargo >/dev/null 2>&1; then
        echo "Trying to install $PACKAGE_NAME via cargo..."
        if cargo install "$PACKAGE_NAME"; then
          echo "$PACKAGE_NAME installed via cargo successfully."
        else
          echo "Failed to install $PACKAGE_NAME via cargo."
          return 1
        fi
      else
        echo "Failed to install $PACKAGE_NAME. Neither pkg nor cargo succeeded."
        return 1
      fi
      
      ./install-in-mason tex-fmt
      

      opt_arch

      cross-reference

      mark

      later

      extra

      cache

      resource

      mark

      later

      extra

      cache

      Ark Archving Tool

      install

      sudo pacman -S ark
      

      auto-cpufreq

      install

      yay -S auto-cpufreq
      sudo systemctl enable --now auto-cpufreq
      

      BlueZ

      install

      1 2

      sudo pacman -S bluez bluez-utils blueman
      sudo systemctl enable --now bluetooth
      

      usage

      # rfkill list
      # sudo rfkill unblock bluetooth
      # sudo hciconfig hci0 up
      # hciconfig
      bluetoothctl
      
      # bluetoothctl
      scan on
      pair XX:XX:XX:XX:XX:XX
      connect XX:XX:XX:XX:XX:XX
      trust XX:XX:XX:XX:XX:XX
      

      requirement


      1. Bluetooth headset connection occasionally fails: br-connection-page-timeout

      2. How to Set up Bluetooth in Arch Linux

      dunst

      install

      sudo pacman -S dunst
      

      Flacon

      install

      yay -S --noconfirm flacon
      # Optional
      sudo pacman -S mac
      

      flameshot

      install

      sudo pacman -S flameshot
      

      config

      flameshot config
      

      flameshot → Configuration → Shortcuts → Pin image on the desktop → Ctrl+T.

      Foliate

      install

      yay -S --noconfirm foliate
      

      grub-btrfs

      install

      1

      sudo pacman -S grub-btrfs
      sudo systemctl enable --now grub-btrfsd.service
      sudo systemctl edit grub-btrfsd.service
      
      [Service]
      ExecStart=
      ExecStart=/usr/bin/grub-btrfsd --syslog --timeshift-auto
      
      sudo systemctl daemon-reload
      sudo systemctl restart grub-btrfsd.service
      

      cross-reference


      1. 设置 Timeshift 快照

      Input Leap

      install

      :yay -S --noconfirm input-leap-git
      

      usage

      input-leap
      

      On Client PC, you can use Barrier.

      Komikku

      install

      yay -S --noconfirm komikku
      

      LightDM Display Manager

      install

      1 2

      Intel + NVIDIA

      # Waiting fixed. 
      sudo pacman -S lightdm lightdm-gtk-greeter
      

      AMD

      sudo pacman -S lightdm lightdm-webkit2-greeter
      
      git clone --depth=1 https://github.com/TheTerrior/lightdm-minimal
      cd lightdm-minimal
      chmod +x ./risky_installer.sh
      sudo ./risky_installer.sh
      sudo vim /etc/lightdm/lightdm.conf
      
      # Add this under [Seat:*]
      greeter-session=lightdm-webkit2-greeter
      
      sudo vim /etc/lightdm/lightdm-webkit2-greeter.conf
      
      webkit_theme = minimal
      

      usage

      sudo systemctl enable --now lightdm
      

      reference

      troubleshoot


      1. Arch linux install lightdm (Light Display Manager)

      2. A minimal LightDM WebKit2 theme

      nitrogen

      install

      sudo pacman -S nitrogen
      

      usage

      nitrogen → Preferences → Add → <wallpaper_dir> → OK → Apply.

      nsxiv

      install

      sudo pacman -S nsxiv
      

      ocrdesktop

      yay -S ocrdesktop
      

      usage

      ocrdesktop -l eng -x 1
      

      reference

      PipeWire

      install

      sudo pacman -S sof-firmware alsa-firmware alsa-ucm-conf
      sudo pacman -S pipewire pipewire-pulse pipewire-alsa
      # systemctl --user stop pulseaudio.service
      # systemctl --user stop pulseaudio.socket
      systemctl --user enable --now pipewire.service
      systemctl --user enable --now pipewire-pulse.service
      sudo pacman -S pavucontrol
      

      preload

      install

      yay -S --noconfirm preload
      sudo systemctl enable --now preload
      

      QDiskInfo

      install

      # Arch
      yay -S --noconfirm qdiskinfo-bin
      

      sway

      install

      sudo pacman -S \
      	sway \
      	xorg-xwayland
      
      # yay -S --noconfirm \
      # 	espanso-wayland
      
      sudo cp /etc/sway/config ~/.config/sway/config
      

      reference

      resource

      cache

      TigerVNC

      install

      # Arch
      sudo pacman -S tigervnc
      # Windows 10
      scoop install tigervnc
      

      usage

      Arch

      1 2 3 4

      vncpasswd
      # A view-only password is not used → No
      
      sudo useradd -m vncuser
      sudo passwd vncuser
      sudo vim /etc/tigervnc/vncserver.users
      
      :1=vncuser
      
      # rm -rf ~/.vnc
      # mkdir ~/.vnc
      vim ~/.vnc/config
      
      # session=xfce
      geometry=1280x720
      # localhost
      alwaysshared
      
      # vncserver :1
      # sudo systemctl enable --now vncserver@:1
      vim ~/vncstart.sh
      
      #!/bin/bash
      vncserver -kill :1 > /dev/null 2>&1
      rm -f /tmp/.X1-lock
      rm -f /tmp/.X11-unix/X1
      vncserver :1
      
      chmod u+x ~/vncstart.sh
      
      ./vncstart.sh
      

      reference


      1. Setting up tigervncserver on arch linux (raspberry-pi)

      2. TigerVNC Server in Manjaro (Arch Linux) - Headless Guide 2021!

      3. How to Install & Configure VNC Server on Ubuntu 22.04

      4. Using Graphical User Interface in WSL

      Timeshift

      Timeshift for Linux is an application that provides functionality similar to the System Restore feature in Windows and the Time Machine tool in Mac OS. Timeshift protects your system by taking incremental snapshots of the file system at regular intervals. These snapshots can be restored at a later date to undo all changes to the system.
      In RSYNC mode, snapshots are taken using rsync and hard-links. Common files are shared between snapshots which saves disk space. Each snapshot is a full system backup that can be browsed with a file manager.
      In BTRFS mode, snapshots are taken using the in-built features of the BTRFS filesystem. BTRFS snapshots are supported only on BTRFS systems having an Ubuntu-type subvolume layout (with @ and @home subvolumes).
      Timeshift is similar to applications like rsnapshot, BackInTime and TimeVault but with different goals. It is designed to protect only system files and settings. User files such as documents, pictures and music are excluded. This ensures that your files remains unchanged when you restore your system to an earlier date. If you need a tool to backup your documents and files please take a look at the excellent BackInTime application which is more configurable and provides options for saving user files. [teejee2008/timeshift]

      Timeshift for Linux是一个提供类似于Windows系统还原功能和Mac OS中Time Machine工具的应用程序。Timeshift通过定期对文件系统进行增量快照来保护您的系统。这些快照可以在以后恢复,以撤销对系统的所有更改。
      在RSYNC模式下,快照是使用rsync和硬链接创建的。常见文件在快照之间共享,节省磁盘空间。每个快照都是一个完整的系统备份,可以使用文件管理器浏览。
      在BTRFS模式下,快照是使用BTRFS文件系统的内置功能创建的。BTRFS快照仅在具有Ubuntu类型子卷布局(带有@和@home子卷)的BTRFS系统上支持。
      Timeshift与rsnapshot、BackInTime和TimeVault等应用程序相似,但目标不同。它旨在仅保护系统文件和设置。用户文件,如文档、图片和音乐被排除在外。这确保了在您将系统恢复到早期日期时,您的文件保持不变。如果您需要一个工具来备份文档和文件,请查看优秀的BackInTime应用程序,它更具可配置性并提供保存用户文件的选项。 [teejee2008/timeshift]

      install

      sudo pacman -S timeshift
      
      sudo pacman -S cronie
      sudo systemctl enable --now cronie.service
      

      cross-reference

      zathura

      zathura is a highly customizable and functional document viewer based on the girara user interface library and several document libraries. [pwmt/zathura]

      zathura是一个高度可定制且功能强大的文档查看器,基于girara用户界面库和多个文档库。 [pwmt/zathura]

      install

      sudo pacman -S \
      	zathura \
      	zathura-cb \
      	zathura-pdf-mupdf
      

      reference

      Rofi

      Rofi: A window switcher, application launcher and dmenu replacement. [davatorium/rofi]

      Rofi:一个窗口切换器、应用程序启动器和dmenu替代品。 [davatorium/rofi]

      install

      sudo pacman -S rofi
      

      cross-reference

      mark

      extra

      cache

      resource

      cache

      dict.sh

      install

      vim dict.sh
      # Copy from https://gist.github.com/Amooti73/9dac66ffee26f93baf211ab8c05949cd
      sudo pacman -Sy tesseract tesseract-data-eng imagemagick scrot xsel rofi sdcv links
      chmod +x ./dict.sh
      

      usage

      dict.sh
      

      Kaomoji Rofi

      install

      git clone --depth=1 https://gitlab.com/ceda_ei/kaomoji-rofi
      cd kaomoji-rofi
      chmod +x ./kaomoji.sh
      

      usage

      kaomoji.sh
      

      rofi-calc

      install

      sudo pacman -S rofi-calc
      

      usage

      rofi -show calc -modi calc -no-show-match -no-sort
      

      rofi-gpaste

      install

      yay -S --noconfirm rofi-gpaste-git
      

      usage

      rofi-gpaste
      

      rofi-pass

      install

      sudo pacman -S rofi-pass
      

      usage

      rofi-pass
      

      rofi-scripts

      install

      git clone --depth=1 https://github.com/miroslavvidovic/rofi-scripts
      cd rofi-scripts
      chmod +x ./web-search.sh
      

      usage

      web-search.sh
      

      rofi-shortcuts

      install

      git clone --depth=1 https://github.com/Zeioth/rofi-shortcuts
      cd rofi-shortcuts
      mkdir -p ~/.config/rofi/rofi-shortcuts/
      mkdir -p ~/.local/share/rofi/rofi-shortcuts/
      cp ./rofi-shortcuts.conf ~/.config/rofi/rofi-shortcuts/rofi-shortcuts.conf
      cp ./rofi-shortcuts.sh ~/.local/share/rofi/rofi-shortcuts/rofi-shortcuts.sh
      chmod u+x ~/.local/share/rofi/rofi-shortcuts/rofi-shortcuts.sh
      ln -sf ~/.local/share/rofi/rofi-shortcuts/rofi-shortcuts.sh ~/.local/bin/rofi-shortcuts
      

      usage

      rofi-shortcuts
      

      rofi-zeal

      install

      yay -S --noconfirm rofi-zeal-git
      

      usage

      rofi-zeal
      

      Rofimoji

      install

      sudo pacman -S rofimoji
      

      usage

      rofimoji
      

      Xfce

      install

      1

      sudo pacman -S xfce4 xfce4-goodies
      # flatpak install flathub io.github.fabrialberio.pinapp
      

      optional

      Configure theme (Materia)

      sudo pacman -S materia-gtk-theme
      

      Settings → Appearance → Style → Materia-dark-compact.

      Configure icon (Papirus)

      sudo pacman -S papirus-icon-theme
      

      Settings → Appearance → Icons → Papirus-Dark.

      Configure font

      sudo pacman -S \
      	noto-fonts-cjk \
       	noto-fonts-emoji \
       	noto-fonts-extra
      

      2

      mkdir -p ~/.local/share/fonts/ttf
      mv *.ttf ~/.local/share/fonts/ttf/<dir>/
      fc-cache
      

      Settings → Appearance → Style → Fonts.

      Configure cursor

      mkdir ~/.icons
      cd ~/.icons
      
      wget https://github.com/ful1e5/Bibata_Cursor_Rainbow/releases/download/v1.1.2/Bibata-Rainbow-Modern.tar.gz
      wget https://github.com/ful1e5/Bibata_Cursor_Rainbow/releases/download/v1.1.2/Bibata-Rainbow-Original.tar.gz
      tar -xvf Bibata-Rainbow-Modern.tar.gz
      tar -xvf Bibata-Rainbow-Original.tar.gz
      

      Get Chroma-*.tar.xz from Chroma Cursors for Linux.

      tar -xvf Chroma-Black-M.tar.xz
      tar -xvf Chroma-Black-S.tar.xz
      tar -xvf Chroma-White-M.tar.xz
      tar -xvf Chroma-White-S.tar.xz
      

      Settings → Mouse and Touchpad → Theme → <theme>.

      Configure desktop

      Settings → Desktop → Desktop Icons → Icon type → None.

      Configure thunar

      • Thunar → View
        • Show Hidden Files (On)
        • Configure Toolbar
          • New Tab (On)
          • Split View (On)
          • View Switcher (On)

      Configure screensaver

      • Settings → Xfce Screensaver
        • Lock Screen → Enable Lock Screen (Off)
        • Screensaver → Enable Screensaver (On/Off)

      Configure applications menu

      • Settings → Panel
        • Panel 2 → Remove
        • Panel 1
        • Appearance
          • Background → Style → Solid color
          • Color → Black
        • Items
          • Separator → Expand (Off)
          • Applications Menu
            • Show button title (Off)
            • Icon → Select icon from → Image Files → 100x100.png
          • Separator → Expand (Off)
          • Workspace Switcher
            • Appearance → Buttons
            • Workspace Settings → General → Names
              # Workspace Name
              1 1
              2 2
              3 3
              4 4
              
          • Windows Buttons
            • Show button labels (Off)
            • Show handle (Off)
          • Separator → Expand (On)
          • PulseAudio Plugin
          • Separator → Expand (On)
          • Notification Plugin
            • Hide panel button when no unread notifications
          • Status Tray Plugin
            • Adjust size automatically (On)
            • Arrange items in a single row (On)
          • Clock
            • Timezone → Asia/Shanghai
            • Layout → Time Only
          • Weather Update
            • Location name → Location name → <your_country_or_region>
              • Appearance → Icon theme → Liquid Dark
          • Separator → Expand (Off)
          • (Optional) Verve Command Line
          • (Optional) Clipman
          • (Optional) Directory Menu
          • (Optional) Mail Watcher
          • (Optional) Mount devices
          • (Optional) Power Mananger Plugin
          • (Optional) SmartBookmark
          • (Optional) Time Out
            • Display icon (Off)

      Default applications

      Settings → Settings Manager → Default Applications.

      Window Manager

      • Settings
        • Windows Manager
          • Style → Materia-dark-compact
          • Keyboard2
        • Windows Manager Tweaks
          • Accessibility
            • Key used to grab and move windows → Super

      Others

      • Storage → Removable Storage
        • Mount removable drives when hot-plugged (On)
        • Mount removable media when inserted (On)

      Backup xfce configure

      git add ~/.config/xfce4
      

      Or:

      git add \
      	~/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml \
      	~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml \
      	~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml \
      	~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml \
      	~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml \
      	~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-screensaver.xml \
      	~/.config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml
      	...
      

      cross-reference

      cache

      resource

      cache


      1. Install XFCE Desktop on Arch Linux

      2. Install a Nerd Font ↩2

      xfce-tile

      install

      sudo pacman -S python-gobject python-xlib
      git clone --depth=1 https://github.com/dodophoenix/xfce-tile
      cd xfce-tile
      cp xfce-setup-shortcuts.sh xfce-setup-shortcuts.sh.bak
      chmod +x ./xfce-setup-shortcuts.sh
      # vim xfce-setup-shortcuts.sh
      
      ./xfce-setup-shortcuts.sh
      

      opt_windows

      cross-reference

      mark

      extra

      cache

      resource

      mark

      later

      extra

      cache

      Advanced Renamer

      install

      scoop install advancedrenamer
      

      AME Wizard

      annex

      ame-wizard

      AudioShell

      install

      choco install audioshell
      

      Autoruns

      annex

      autoruns

      BleachBit

      install

      scoop install bleachbit
      

      usage

      • Windows Explorer → 缩略图(On) → 清空

      Bulk Rename Utility

      install

      scoop install bulk-rename-utility
      scoop install bulk-rename-command
      

      Carnac

      install

      scoop install carnac
      

      CenterTaskbar

      install

      scoop install centertaskbar
      

      CPU-Z

      install

      scoop install cpu-z
      

      DeskPins

      install

      scoop install deskpins
      

      Directory Opus

      config

      • 设置 → 选项 → 工具栏 → 图标 → 导入
      • 设置 → 自定义工具栏 → 快捷键
      • 设置 → 文件类型 → 文件类型群组 → Archives → 编辑 → Ctrl + 左键双击 → SmartZip.exe x {allfilepath}
      • 设置 → 文件类型 → 系统文件类型 → URL:Magnet URI → 编辑 → open → 编辑C:\Users\User\Scoop\apps\qbittorrent-enhanced\current\qbittorrent.exe "%1"

      reference

      resource

      mark

      cache

      Ditto

      install

      scoop install ditto
      

      config

      • Ditto
        • General
          • Maximum Number of Saved Copies → 100000
          • Display Font
            字体: 更纱终端书呆黑体-简
            大小: 小五
            
          • Advanced → Text lines per clip → 1
        • Keyboard Shortcuts → Activate Ditto → Win-S-d

      dnGrep

      install

      scoop install dngrep
      

      config

      • dnGrep
        • Settings → Options
          • New versions → Check automatically every 10 days (Off)
          • Application fonts
            • Use default font (Off)
            • Font family → Sarasa Term SC Nerd
            • Results font family → Sarasa Term SC Nerd
          • Custom editor → Add
            • Sublime Text
              Lable: Sublime Text
              Command: C:\Program Files\Sublime Text\subl.exe
              Arguments: %file:%line:%column
              
          • Compare application
            Command: WinMergeU.exe
            Arguments: /e /u /x
            
        • Search in
          • Patterns to match → *.md;*.txt
          • Patterns to exclude → .git\*;node_modules;public;site;_build;_gen
        • Search results
          • Show results tree expanded (On)

      EarTrumpet

      install

      scoop install eartrumpet
      

      FastStone Image Viewer

      install

      scoop install fsviewer
      

      usage

      • 设置 → 设置
        • 视图
          • 关联文件打开方式 → 浏览模式
          • 循环 (On)
          • 退出时提示确认 (Off)
          • 覆盖文件时提示确认 (On)
          • 单个文件删除到 → 回收站,不提示
        • JPEG文件
          • 默认JPEG质量 → 100
          • 如果可能,使用原始JPEG文件的质量值 (Off)
          • 颜色缩减取样 → 无(图像品质最好)
        • 外部程序 → 增加 → 目标程序 → 显示名称 IrfanView → 确定

      FFmpeg Batch AV Converter

      install

      scoop install ffmpeg-batch
      

      usage

      • 流多路复用 → 字幕轨 → 保存轨道

      annex

      ffmpeg-batch

      FontReg

      install

      scoop install fontreg
      

      Geek Uninstaller

      install

      scoop install geekuninstaller
      

      Git Extensions

      install

      # Arch
      yay -S --noconfirm gitextensions
      # Windows 10
      scoop install gitextensions
      

      GPT-Subtrans

      install

      git clone --depth=1 https://github.com/machinewrapped/gpt-subtrans
      uv venv
      .venv\Scripts\activate.bat
      uv pip install -r requirements.txt
      scripts\generate-cmd.bat gui-subtrans
      scripts\generate-cmd.bat llm-subtrans
      

      usage

      gui-subtrans
      

      optional

      • Settings → Processing
        • Preprocess Subtitles (On)
        • Postprocess Translation (On)
        • Save Preprocessed Subtitles (On)

      usage

      • Open file → Select <subtitle> → Project Settings → Entry Movie Name, Target Language → Start.

      annex

      gpt-subtrans

      GPU-Z

      install

      scoop install gpu-z
      

      HiBit Uninstaller

      config

      • 工具 → 垃圾文件清理程序 → 忽略列表 → 右键 → 添加文件夹
        • C:\Users\User\AppData\Roaming\fnm\node-versions
        • C:\ProgramData\pm2\home
      • 工具 → 空文件夹清理程序 → 忽略列表 → 右键 → 添加文件夹
        • PostgresData

      HostsFileEditor

      install

      scoop install hosts-file-editor
      

      Image Filter Collection

      annex

      image-filter-collection

      IrfanView

      install

      scoop install irfanview
      

      config

      • IrfanView → Options → Properties/Settings
        • Start / Exit options → Exit options
          • Close viewer only on ESC, if Thumbnails window displayed (On)
          • Others (Off)
        • File Handing
          • Delete
            • Delete to Recycle Bin (On)
            • Jump to the next file after deleting/moving (On)
            • Others (Off)
          • Save / Rename
            • Ask to rename if incorrect extension (On)
            • Others (Off)

      usage

      1. Open a image with IrfanView.
      2. (Optional) Hold and drag left mouse button → Shift+Up/Down/Left/RightAlt+Up/Down/Left/RightCtrl+y to crop.
      3. (Optional) F12 to edit.
      4. Ctrl+s → Save quality → 100 → Profiles → Save.

      JPEGView

      install

      scoop install jpegview-fork
      

      config

      • JPEGView → MBtm
        • Show navigation panel (Off)
        • Display order → File name
        • Zoom → Fit window to image (On)
        • Settings/Admin
          • Edit user settings
            ShowFullScreen=false
            ShowNavPanel=false
            DefaultSaveFormat=png
            
          • Manage ‘Open image with’ menu → New
            Title: Fast Stone Viewer
            Application → Brower → `<path_to>/krita.exe`
            Shortcut key: Shift+p
            

      lessmsi

      annex

      lessmsi

      Link Shell Extension

      install

      choco install -y LinkShellExtension
      

      Lintalist

      Lintalist allows you to store and (incrementally) search and edit texts in bundles and paste a selected text in your active program. The text can be interactive, for example you can automatically insert the current time and date, ask for (basic) user input or make a selection from a list etc and finally it can also run a script. You can use keyboard shortcuts or abbreviations to paste the text (or run the script) without opening the search window. [lintalist.github.io]

      Lintalist允许您以捆绑的方式存储、增量搜索和编辑文本,并将选定的文本粘贴到您当前活动的程序中。文本可以是交互式的,例如,您可以自动插入当前的时间和日期,询问(基本)用户输入或从列表中进行选择等,最后它还可以运行脚本。您可以使用键盘快捷键或缩写在不打开搜索窗口的情况下粘贴文本(或运行脚本)。 [lintalist.github.io]

      Personal do

      scoop install lintalist
      mkdir %USERPROFILE%\Usr\Source\lintalist
      cd %USERPROFILE%\Usr\Source\lintalist
      git clone --depth1=1 https://github.com/lintalist/lintalist-themes
      cd lintalist-themes
      unzip Solarized.zip -d Solarized
      

      Move Solarized\ into <path_to>\lintalist\themes\.

      config

      • Lintalist → MBtm_R → Configuration
        • Settings
          • AlwaysLoadBundles=default.txt
          • DefaultBundle=default.txt
          • Font=Sarasa Term SC Nerd Font
          • FontSize=10
          • SetStartup=1
          • ShowQuickStartGuide=0
          • SortByUsage=0
          • StartOmniSearchHotkey=^#!l
          • StartSearchHotkey=#!l
          • Theme=\Solarized\Solarized.ini
          • CompactHeight=720
          • CompactWidth=360
          • WideHeight=480
          • WideWidth=850

      reference

      Lively

      install

      scoop install lively
      

      config

      • Lively → Settings → Desktop & behavior → Wallpaper input
        • Keyboard
        • Mount interaction when application focused

      reference

      LockHunter

      install

      scoop install lockhunter
      

      Magpie

      install

      scoop install magpie
      

      config

      Magpie → Profiles → Defaults → General → Capture method → Desktop Duplication

      MEGASync Desktop

      install

      scoop install megasync
      

      MiKTeX

      install

      scoop install miktex
      

      usage

      • MiKTeX Console → Tasks
        • Update package database
        • Refresh font map files

      MKV Muxing Batch GUI

      install

      choco install -y mkv-muxing-batch-gui
      

      annex

      mkv-muxing-batch-gui

      Mp3tag

      install

      scoop install mp3tag
      
      # Install context menu option
      start 'regsvr32' -Verb 'RunAs' -Args @("C:\Users\User\Scoop\apps\mp3tag\current\Mp3tagShell.dll", '/s')
      # Uninstall context menu option
      start 'regsvr32' -Verb 'RunAs' -Args @('/u', "C:\Users\User\Scoop\apps\mp3tag\current\Mp3tagShell.dll", '/s')
      

      annex

      mp3tag

      NohBoard

      install

      scoop install nohboard
      

      annex

      nohboard

      OpenHashTab

      install

      # Scoop
      gsudo scoop install openhashtab-np
      # Chocolatey
      choco install -y openhashtab
      

      Open Shell

      install

      # Scoop
      gsudo scoop install open-shell-np
      # Chocolatey
      choco install -y open-shell
      

      config

      • Windows Start Menu → MBtm → Open Shell → Setting
        • Start Menu style → Replace Start button → Custom → Pick image
        • Controls
          • Left Click opens → Windows Start Menu
          • Shift+Click opens → Nothing
          • Windows Key opens → Windows Start Menu
          • Shift+Win opens → Nothing
        • Backup → Save to XML File

      Rapid Environment Editor

      install

      scoop install rapidee
      

      RapidCRC Unicode

      annex

      rapidcrc-unicode

      RBTray

      install

      scoop install rbtray
      

      Reduce Memory

      install

      scoop install reduce-memory
      

      Restart Explorer

      install

      scoop install restart-explorer
      

      RetroEditor

      annex

      retroeditor

      Rufus

      install

      scoop install rufus
      

      annex

      rufus

      SD Memory Card Formatter

      install

      scoop install sd-card-formatter
      

      SendTo Menu Editor

      annex

      sendto-menu-editor

      sforzando

      annex

      sforzando

      SharpKeys

      install

      scoop install sharpkeys
      

      Shell-X

      install

      1. Download shell-x.*.7z ffrom Releases.
      2. Decompress it to shell-x/.
      3. Add shell-x/ into PATH.
      shell-x -r
      shell-x -init
      

      ShellExView

      install

      scoop install shellexview
      

      SmartTaskbar

      install

      scoop install smarttaskbar
      

      SmartZip

      SmartZip is a software tool designed to extend the capabilities of 7-Zip, focusing on intelligent and automated file compression and decompression. Key features of SmartZip include:

      • Smart extraction of compressed files, where single files are extracted to the current folder, and multiple files are extracted into a new folder.
      • Password handling for encrypted archives, including automated attempts with stored passwords and clipboard contents, plus manual password prompts if needed.
      • Automatic management of passwords, including dynamic sorting and adding newly used passwords.
      • Post-extraction file processing such as renaming or deleting files based on specific rules.
      • Support for extracting nested compressed archives with automatic deletion of inner archives after extraction.
      • Intelligent file opening behavior that opens archives with 7-Zip or presents options to add files to archives.
      • Smart compression options that compress multiple folders or files efficiently.
      • Integration with Windows Explorer through right-click context menus, including workarounds for multi-file operations.
      • Command-line support for various operations like smart extraction, manual encoding extraction, opening with 7-Zip, and compression.
      • User-friendly GUI for setting preferences, managing passwords, and batch processing.
        SmartZip is a practical tool for users who frequently work with compressed files, providing convenience through automation, password management, and integration with common workflows.
        This tool supports a wide range of customizable settings and is suitable for users looking to simplify and enhance their file compression and extraction tasks, especially when dealing with password-protected and nested archives. It is actively updated and includes features that cater to both casual and advanced users.
        The software is available for download and use primarily on Windows systems and can be controlled both via GUI and command line for flexible usage.
        In summary, SmartZip is an intelligent 7-Zip extension tool that automates and manages compression and decompression processes with added convenience features like password management, nested archive handling, and file processing after extraction. [perplexity.ai]

      SmartZip是一个软件工具,旨在扩展7-Zip的功能,专注于智能和自动化的文件压缩和解压缩。SmartZip的主要功能包括:

      • 智能提取压缩文件,将单个文件提取到当前文件夹,将多个文件提取到新的文件夹中。
      • 针对加密归档的密码处理,包括使用已存储的密码和剪贴板内容的自动尝试,以及在需要时的手动密码提示。
      • 自动管理密码,包括动态排序和添加新使用的密码。
      • 解压后文件处理,如根据特定规则重命名或删除文件。
      • 支持提取嵌套压缩归档,解压后自动删除内部归档。
      • 智能文件打开行为,将归档文件与7-Zip打开或提供将文件添加到归档的选项。
      • 智能压缩选项,可以有效地压缩多个文件夹或文件。
      • 通过右键上下文菜单与Windows资源管理器集成,包括多文件操作的变通方法。
      • 支持各种操作的命令行,如智能提取、手动编码提取、使用7-Zip打开和压缩。
      • 用户友好的图形用户界面,用于设置偏好、管理密码和批量处理。
        SmartZip是一个实用工具,适合经常处理压缩文件的用户,通过自动化、密码管理和与常见工作流程的集成提供便利。
        该工具支持广泛的可自定义设置,适合希望简化和增强文件压缩和解压缩任务的用户,尤其是在处理受密码保护和嵌套归档时。它持续更新,包含符合休闲和高级用户需求的功能。
        该软件主要可在Windows系统上下载和使用,能够通过GUI和命令行灵活控制。
        总之,SmartZip是一个智能的7-Zip扩展工具,它通过增加如密码管理、嵌套归档处理和解压后的文件处理等便利功能,自动化和管理压缩和解压缩过程。[perplexity.ai]

      install

      1. Download SmartZip*.zip from SmartZip - Releases.
      2. Decompress it to SmartZip/.

      Create light.ico form dark.ico

      magick convert dark.ico -channel RGB -negate light.ico
      

      config

      1. SmartZip → 自定义 → 图标路径 → %SmartZipDir%\light.ico
      2. 关联 → 右键菜单 → Select SmartZip Decompress, SmartZip Compress → 注册

      annex

      StaxRip

      StaxRip is a powerful video/audio encoding GUI for Windows.
      It executes and controls console apps such as x265, mkvmerge, ffmpeg, etc. and uses scripting based frame servers, AviSynth+ and VapourSynth, for video processing. Each project can also be extended by various events and settings. [staxrip/staxrip]

      StaxRip是一个强大的Windows视频/音频编码图形用户界面。
      它执行和控制如x265、mkvmerge、ffmpeg等控制台应用程序,并使用基于脚本的帧服务器AviSynth+和VapourSynth进行视频处理。每个项目还可以通过各种事件和设置进行扩展。 [staxrip/staxrip]

      install

      scoop install staxrip
      

      reference

      annex

      Subtitles Cleaner

      annex

      subtitlescleaner

      SumatraPDF Reader

      install

      scoop install sumatrapdf-installer
      

      reference

      T-Clock

      install

      scoop install t-clock
      

      config

      • T-Clock → Options → Time → Format → Time options
        • Hour (On)
        • Minute (On)

      Wallpaper Engine

      usage

      1. 新建 … 关闭.
      2. 编辑 → 在资源管理器中打开 → file.json.
      3. 文件 → 打开最近的项目 → file.json.
      4. 创意工坊 → 在创意工坊上分享壁纸 → 预览图片 → 导入文件 → 发布更新 → 关闭.

      reference

      wcap

      config

      • wcap → Settings
        • Video
          Max Framerate: 48
          Bitrate: 5900
          
        • Audio
          Samplerate: 44100
          Bitrate: 96
          
        • Shortcuts
          • Capture Monitor → Ctrl-Alt-Shift-m
          • Capture Window → Ctrl-Alt-Shift-w

      WinCDEmu

      install

      scoop install wincdemu
      

      WinMerge

      install

      scoop install winmerge
      

      WinSCP

      install

      scoop install winscp
      

      usage

      • WinSCP → Synchronize:
        Local directory: roms\
        Remote directory: /recalbox/share/roms
        Direction/Target directory: Remote
        Mode: Synchronize files
        Synchronize options: Preview changes
        Caomparion criteria: Modification time
        

      WinSSHTerm

      install

      scoop install winsshterm
      

      config

      Cmder

      install

      scoop install clink clink-completions conemu
      

      Personal do

      mkdir "%USERPROFILE%/Usr/Source/cmder"
      cd "%USERPROFILE%/Usr/Source/cmder"
      git clone --depth=1 https://github.com/chrisant996/clink-fzf
      git clone --depth=1 https://github.com/chrisant996/clink-gizmos
      git clone --depth=1 https://github.com/shunsambongi/clink-zoxide
      
      set "CMDER_HOME=%USERPROFILE%\Usr\Opt\cmder_mini"
      set "CMDER_SRC=%USERPROFILE%\Usr\Source\cmder"
      
      del "CMDER_HOME%\config\clink_settings"
      del "CMDER_HOME%\config\starship.lua"
      del "CMDER_HOME%\config\user_aliases.cmd"
      del "CMDER_HOME%\config\user_profile.cmd"
      del "CMDER_HOME%\config\user_prompt.lua"
      mklink "%CMDER_HOME%\config\clink_settings" "%DOTFILES_DIR%\.config\_windows_cmder\config\clink_settings"
      mklink "%CMDER_HOME%\config\starship.lua" "%DOTFILES_DIR%\.config\_windows_cmder\config\starship.lua"
      mklink "%CMDER_HOME%\config\user_aliases.cmd" "%DOTFILES_DIR%\.config\_windows_cmder\config\user_aliases.cmd"
      mklink "%CMDER_HOME%\config\user_profile.cmd" "%DOTFILES_DIR%\.config\_windows_cmder\config\user_profile.cmd"
      mklink "%CMDER_HOME%\config\user_prompt.lua" "%DOTFILES_DIR%\.config\_windows_cmder\config\user_prompt.lua"
      
      del "%CMDER_HOME%\vendor\fzf.lua"
      del "%CMDER_HOME%\vendor\setpath.bat"
      rmdir /S /Q "%CMDER_HOME%\vendor\clink"
      rmdir /S /Q "%CMDER_HOME%\vendor\clink-completions"
      rmdir /S /Q "%CMDER_HOME%\vendor\conemu-maximus5"
      mklink "%CMDER_HOME%\vendor\fzf.lua" "%DOTFILES_DIR%\.config\_windows_cmder\vendor\fzf.lua"
      mklink "%CMDER_HOME%\vendor\setpath.bat" "%DOTFILES_DIR%\.config\_windows_cmder\vendor\setpath.bat"
      mklink /J "%CMDER_HOME%\vendor\clink" "%SCOOP%\apps\clink\current"
      mklink /J "%CMDER_HOME%\vendor\clink-completions" "%SCOOP%\apps\clink-completions\current"
      mklink /J "%CMDER_HOME%\vendor\conemu-maximus5" "%SCOOP%\apps\conemu\current"
      
      del "%CMDER_HOME%\vendor\fuzzy_history.lua"
      mklink "%CMDER_HOME%\vendor\fuzzy_history.lua" "%CMDER_SRC%\clink-gizmos\fuzzy_history.lua"
      
      del "%CMDER_HOME%\vendor\zoxide.lua"
      mklink "%CMDER_HOME%\vendor\zoxide.lua" "%CMDER_SRC%\clink-zoxide\zoxide.lua"
      

      config

      Cmder → Settings → Import → user-ConEmu.xml.

      reference

      cross-reference

      mark

      resource

      mark

      extra

      cache

      annex

      colorcheme_fakenight colorscheme_vanta

      clink-fzf

      config

      git clone --depth=1 https://github.com/chrisant996/clink-fzf
      cd clink-fzf
      cp fzf.lua fzf.lua.bak
      subl fzf.lua
      
      local function apply_default_bindings()
        if settings.get("fzf.default_bindings") then
      		-- Add the following
      		-- C-i / Tab
      		rl.setbinding([["\C-I"]], [["luafunc:fzf_selectcomplete_force"]])
      		-- Tab
      		rl.setbinding([["\t"]], [["luafunc:fzf_complete_force"]])
      		-- C-Spc
      		rl.setbinding([["\e[27;5;32~"]], [["luafunc:fzf_complete"]])
      		rl.setbinding([["\C-@"]], [["luafunc:fzf_complete"]])
      

      Everything

      install

      scoop install everything
      

      config

      1 2

      • Everything → Options
        • General
          • Fonts and Colors → 更纱终端书呆黑体-简
          • Results
            • Close window on execute (On)
            • Open path with double click in path column (On)
          • Keyboard
            • Toggle window Hotkey → A-e
        • Index
          • Index
            Index recent changes (On)
            Index date modified (On)
            Fast date modified sort (On)
            Fast path sort (On)
            
          • Excluede
            • Excluede hidden files and folder (On)
            • Excluede system files and folder (On)
            • Enable exclude list
            • Exclude folder
              • Add Folder
                C:\$Recycle.Bin
                C:\ProgramData
                C:\SysReset
                C:\System Volume Information
                C:\Users\<user>\AppData\Local\Temp
                C:\Windows
                
              • Add Filter
                .*
                _build
                node_modules
                public
                site
                watch_later*
                *.bak
                *.tmp
                Hiberfil.sys
                Pagefile.sys
                Windows.old
                

      reference

      cross-reference

      cache


      1. Omit Recycle Bin Files From Search - voidtools forum

      2. Tools Options Exclude “Exclude files” *.tmp :: not working ?? - voidtools forum

      EverythingToolbar

      install

      scoop install everythingtoolbar
      

      usage

      • 更多
        • 视图 → 紧凑 (详细)
        • 选项 → 修改快捷键 → Win+Alt+S
        • 选项 → 隐藏空搜索, 选择第一个结果, 双击打开, 显示快速开关, 禁用动画, 自动检查更新 On
        • 选项 → 规则 → 添加
          名称: Open with Sublime
          命令: subl %filename%
          
      • 鼠标左键拖拽应用的窗口边缘 → 调整窗口大小 → 全高, 1/3宽

      ImageGlass

      install

      scoop install imageglass
      

      config

      • ImageGlass → More → Settings
        • Tools → Add:
          Name: ExifGlass - EXIF metadata viewer
          Excutable: ExifGlass.exe
          Hotkeys: x
          
        • Edit → Image editing apps → Add:
          File extension: .jpg;.png;.svg
          App name: Krita
          Executable: krita.exe
          

      cross-reference

      mark

      ExifGlass

      install

      scoop install exifglass
      

      config

      ExifGlass → Menu → Settings → Executable Path → Select → exiftool.exe

      cross-reference

      Keypirinha

      install

      scoop install keypirinha
      

      Personal do

      rmdir /S /Q "%SCOOP%\apps\keypirinha\current\portable\Profile\User"
      mklink /J "%SCOOP%\apps\keypirinha\current\portable\Profile\User" "%DOTFILES_DIR%\.config\_windows_keypirinha\Profile\User"
      mkdir "%USERPROFILE%/Usr/File"
      
      cd "%USERPROFILE%\Usr\File"
      git clone --depth=1 https://github.com/scillidan/file_keypirinha_pkg
      rmdir /S /Q "%SCOOP%\apps\keypirinha\current\portable\Profile\InstalledPackages"
      mklink /J "%SCOOP%\apps\keypirinha\current\portable\Profile\InstalledPackages" "%USERPROFILE%\Usr\File\file_keypirinha_pkg"
      
      cd "%USERPROFILE%\Usr\RepoFork"
      git clone --depth=1 https://github.com/scillidan/Keypirinha-PuzzTools
      
      1. Alacritty → MBtm → Create Shortcut
      2. Shortcut → MBtm → Properties → Target → `<path_to>\alacritty.exe –config-file “<path_to>\alacritty.toml” –working-directory “C:\Users\User” –command“
      3. Keypirinha → MBtn_R → Configure Keypirinha
        [external]
        terminal = "C:\Users\User\.local\bin\alacritty_command.lnk"
        

      reference

      cross-reference

      extra

      resource

      mark

      extra

      cache

      annex

      color_fakenight color_vanta

      Keypirinha-Zealous

      config

      Keypirinha → Configure Package → Zealous:

      [main]
      # path = "<path_to>/zeal.exe"
      docset_path = "<path_to_docsets>"
      results = 50
      wildcard = no
      
      # Get the `CFBundleIdentifier` value liked `python` from `Document.docset\Contents\Info.plist`.
      # If you cannot search, it may be a problem with the document.
      [docs]
      py = python
      gdt = godot
      
      # See https://kapeli.com/docsets#supportedentrytypes
      [types]
      a = Attribute
      c = Class
      e = Exception
      f = Function
      g = Guide
      m = Method
      s = Section
      v = Variable
      o = Option
      

      Calibre

      calibre is an e-book manager. It can view, convert, edit and catalog e-books in all of the major e-book formats. It can also talk to e-book reader devices. It can go out to the internet and fetch metadata for your books. It can download newspapers and convert them into e-books for convenient reading. It is cross platform, running on Linux, Windows and macOS. [kovidgoyal/calibre]

      calibre是一款电子书管理器。它能够查看、转换、编辑和编目所有主要电子书格式的电子书。它还可以与电子书阅读器设备进行通信。它可以上网获取书籍的元数据。它可以下载报纸并将其转换为电子书,以方便阅读。它是跨平台的,支持运行在Linux、Windows和macOS上。 [kovidgoyal/calibre]

      install

      # Arch
      sudo pacman -S calibre
      # Windows 10
      scoop install calibre
      

      Deploy with Docker compose

      1

      mkdir calibre
      cd calibre
      vim docker-compose.yml
      # Copy from https://docs.linuxserver.io/images/docker-calibre/#docker-compose-recommended-click-here-for-more-info
      
      		volumes:
      			# Save calibre config (Including Cablire Library) on mount disk
      			- /mnt/<mount_name>/local/share/calibre/config:/config
      			- /mnt/<mount_name>/<book_storage>:/<book_storage>
      
      sudo docker compose up -d
      
      1. Cabibre → Preferences → Sharing → Sharing over the net → Run server automatically when calibre starts (On) → Start server.
      2. The opds serve is on http://<your_host>:8081/opds.

      config

      Main window

      • Calibre → Preferences
        • Look & feel
          • Enable system tray icon (needs restart) (On)
          • Toolbar → Icon size → Small
        • Toolbars & menus → Current actions:
          Add books
          Get books
          Choose library
          Create catalog
          --- Separator ---
          Preferences
          Help
          

      Viewer toolbar

      2 3

      1. Calibre → Select a book → View → View with calibre E-book viewer.
      2. At the top of the reader → Show controls → Preferences
        • Miscellaneous
          • Show a toolbar with the most useful actions (On)
          • Customize toolbar → Current actions:
            Switch color scheme
            Toggle paged mode
            Table of Contents
            Search
            Read aloud
            Lookup words
            
        • Selection behavior
          • Current actions:
            Looup/search selected word
            Read aloud
            Create a bookmark
            Highlight selection
            Remove this highlight
            

      Read aloud

      # Arch
      yay -S --noconfirm piper-voices-en-us
      
      • viewer → Toolbar → Read aloud → Configure
        • Text-to-Speech engine → The Piper Neural Engine.
        • Voices → English → libritts (United States) [High quality] → Download voice.

      But I can’t download voice successes. So I put files liked en_US-libritts-high.onnx, en_US-libritts-high.onnx.json into ~/.cache/calibre/piper-voices/.

      Lookup words

      Lookup words → Add sources → For example, Add:

      Name: etymonline.com
      URL: https://www.etymonline.com/search?q={word}
      
      # https://github.com/Crissium/SilverDict
      Name: silverdict_<dict_group>
      URL: http://<your_host>:2628/api/query/<dict_group>/{word}
      
      # https://github.com/open-webui/open-webui
      Name: open-webui_librarian
      URL: http://<your_host>:<port>/?models=librarian-answer-in-zh&q={word}
      

      usage

      1. Calibre → Get books → Configure → Project Gutenberg (Enable).
      2. Title → Entry <book_name> → Search.
      3. Select a book → Enter → Check book format → Download.
      4. Select book → View → View with calibre E-book viewer.

      reference

      cross-reference

      extra

      resource

      mark

      cache

      annex

      calibre lookup_01 lookup_02


      1. linuxserver/calibre

      2. How To Enable Sidebar in Calibre Ebook Viewer

      3. Adding Dictionary In Calibre Ebook

      Ebook Translator

      annex

      ebook-translator-calibre-plugin

      GoldenDict

      GoldenDict是一款开源的桌面端词典检索应用,跨平台,支持多种词典格式。它有十分丰富的可配置项,包括字典组,拼写检查、单词发音、语音合成、在线翻译等等。 [scillidan, “配置GoldenDict”]

      GoldenDict is an open-source desktop dictionary lookup application that is cross-platform and supports multiple dictionary formats. It features a wide range of configurable options, including dictionary groups, spell checking, word pronunciation, text-to-speech, online translation, and more. [scillidan, “配置GoldenDict”]

      install

      # Arch
      yay -S --noconfirm goldendict-git
      # Windows 10
      scoop install goldendict
      

      config

      • GoldenDict
        • View
          • Search Pane (On)
          • Results Navigation Pane (Off)
          • Favorites Pane (Off)
          • History Pane (Off)
          • Dictionary Bar (Off)
          • Navigation (Off)
        • Edit
          • Preferences
            • Interface
              • Hide Single tab (On)
              • Start to system tray (On)
              • Select word by single click (On)
              • ESC key hides main window (On)
            • Scan Popup
              • Enable scan popup functionality (Off)
            • Hotkeys
              • Use the following hotkey to show or hide the main window: Alt+Shift+G
              • Use the following hotkey to translate a word from clipboard: Alt+Z
          • Dictionaries
            • Sources → Transliteration → Chinese Conversion (On)

      Personal do

      # Arch
      mkdir "~/Usr/Source/goldendict"
      cd "~/Usr/Source/goldendict"
      
      # Windows 10
      mkdir "%USERPROFILE%/Usr/Source/goldendict"
      cd "%USERPROFILE%/Usr/Source/goldendict"
      git clone --depth=1 https://github.com/VimWei/GoldenDictOCR
      git clone --depth=1 https://gist.github.com/e95773454d79dc047aeed016fb00daef tencenttrans_2zh_zh2en
      git clone --depth=1 https://github.com/LibreOffice/dictionaries
      

      Dark theme

      git clone --depth=1 https://github.com/yozhic/GoldenDict-Full-Dark-Theme
      cd GoldenDict-Full-Dark-Theme
      # Arch
      sudo ln -sfn $(pwd)/GoldenDict/extras /usr/share/goldendict/extras
      sudo ln -sfn $(pwd)/GoldenDict/icons /usr/share/goldendict/icons
      ln -sfn $(pwd)/GoldenDict/fonts $HOME/.config/goldendict/fonts
      mkdir -p $HOME/.config/goldendict/styles/Dark
      (cat "$(pwd)/GoldenDict/styles/Dark/article-style.css"; curl -s https://raw.githubusercontent.com/scillidan/dotfiles/refs/heads/main/.config/_goldendict/article-style_user.css) > "$HOME/.config/goldendict/styles/Dark/article-style.css"
      ln -sfn $(pwd)/GoldenDict/styles/Dark/qt-style.css $HOME/.config/goldendict/styles/Dark/qt-style.css
      

      reference

      cross-reference

      extra

      resource

      later

      extra

      cache

      annex

      GoldenDict tools

      gd-marisa

      This script outputs the sentence with clickable characters and searches for the longest available dictionary entry (from a predefined list) beginning at that character. For deinflection it currently relies on rdricpp. It also provides links of available entries of smaller substrings. [Ajatt-Tools/gd-tools]

      该脚本输出带有可点击字符的句子,并从该字符开始搜索最长可用的字典条目(来自预定义列表)。目前,它依赖于rdricpp进行去词形变化。它还提供较小子字符串的可用条目的链接。 [Ajatt-Tools/gd-tools]

      goldendict-ng_gd-marisa.mp4, (bilibili

      mpv

      install

      # Arch
      sudo pacman -S mpv
      # Windows 10
      scoop install mpv
      

      reference

      cross-reference

      extra

      cache

      resource

      mark

      later

      extra

      cache

      annex

      font m4b

      mpv-cheatsheet

      annex

      mpv-cheatsheet

      mpv handler

      install

      1. Get mpv-handler-*.zip from Releases.
      2. Decompress to mpv-handler/.
      3. Run mpv-handler/handler-install.bat as Administrator.

      webtorrent-mpv-hook

      install

      # Node.js
      pnpm add -g webtorrent-mpv-hook
      

      annex

      webtorrent-cli

      Obsidian

      Obsidian is a private, locally stored note-taking and knowledge-management application designed to help you organize ideas as interconnected notes. It emphasizes Markdown notes, bidirectional linking, and a graph view to visualize connections, with a strong focus on offline use and privacy. [perplexity.ai]

      Obsidian是一个私有的、本地存储的笔记和知识管理应用程序,旨在帮助您将想法组织为相互关联的笔记。它强调Markdown笔记、双向链接和图形视图,以可视化连接,尤其注重离线使用和隐私。 [perplexity.ai]

      install

      # Arch
      sudo pacman -S obsidian
      # Windows 10
      scoop install obsidian
      

      config

      • Obsidian
        • Settings → Core plugins (On)
          • Bookmarks
          • Command palette
          • File recovery
          • Files
          • Outline
          • Page preview
          • Slash commands
          • tags view
          • Workspaces
          • Backlinks
          • Outgoing links
        • Ribbon (Pinned)
          • Workspaces: Manage workspace layouts
          • Home page: Open homepage
          • BRAT: All Commands list
          • Media Companion: Open gallery
          • Calibre: Open horizontally
          • Word Frequency: Show word frequency sidebar

      reference

      cross-reference

      extra

      resource

      mark

      later

      extra

      cache

      Kokoro TTS Plugin for Obsidian

      install

      1

      cd <your_vault>/.obsidian/plugins
      mkdir kokoro-tts
      cd kokoro-tts
      

      Get files from Releases:

      main.js
      manifest.json
      styles.css
      kokoro_backend.py
      requirements.txt
      
      conda create -n kokoro-tts python=3.10
      conda activate kokoro-tts
      pip install torch==2.5.1 torchvision==0.20.1 --index-url https://download.pytorch.org/whl/cu121
      pip install -r requirements.txt
      

      Get kokoro-v0_19.pth from hexgrad/kLegacy.

      annex

      obsidian-kokoro-tts-plugin_01 obsidian-kokoro-tts-plugin_02


      1. https://github.com/Mithadon/obsidian-kokoro-tts-plugin#manual-installation

      Media Slider

      usage

      ```media-slider
      ---
      sliderId: my-slider
      carouselShowThumbnails: true
      thumbnailPosition: bottom
      captionMode: overlay
      autoplay: false
      slideshowSpeed: 0
      width: 100%
      height: 300px
      transitionEffect: fade
      transitionDuration: 500
      enhancedView: true
      interactiveNotes: true
      compression: 0.8
      fileTypes:
        - "jpg"
        - "png"
        - "mp4"
      recursive: true
      compareMode: true
        orientation: "vertical"
        initialPosition: 50
        showLabels: true
        label1: "Before"
        label2: "After"
      ---
      ![[image1|1-1]]
      ![[image2|1-2]]
      ...
      ```
      

      Sublime Text

      install

      # Arch
      sudo pacman -S sublime-text
      # Windows 10
      scoop install sublime-text
      
      # Windows 10
      rmdir /S /Q "%USERPROFILE%\AppData\Roaming\Sublime Text\Packages\User"
      mklink /J "%USERPROFILE%\AppData\Roaming\Sublime Text\Packages\User" "%DOTFILES_DIR%\.config\sublime-text\Packages\User"
      

      usage

      • Edit → Permute Lines → Unique

      reference

      cross-reference

      extra

      resource

      mark

      cache

      JsPrettier

      cross-reference

      Minify

      cross-reference

      VSCodium

      VSCodium is a community-driven, freely-licensed binary distribution of Microsoft’s editor VS Code.
      Microsoft’s vscode source code is open source (MIT-licensed), but the product available for download (Visual Studio Code) is licensed under this not-FLOSS license and contains telemetry/tracking.
      The VSCodium project exists so that you don’t have to download+build from source. This project includes special build scripts that clone Microsoft’s vscode repo, run the build commands, and upload the resulting binaries for you to GitHub releases. These binaries are licensed under the MIT license. Telemetry is disabled. [vscodium.com]

      VSCodium是一个社区驱动的、自由许可的微软编辑器VS Code的二进制分发版。
      微微软的vscode源代码是开源的(MIT许可证),但可下载的产品(Visual Studio Code)是根据这种非FLOSS许可证授权的,并包含遥测/追踪。
      VSCodium项目的存在是为了让你无需从源代码下载+构建。该项目包含特殊的构建脚本,会克隆微软的vscode代码库,运行构建命令,并将生成的二进制文件上传到GitHub发布。这些二进制文件是根据MIT许可证授权的。遥测被禁用。 [vscodium.com]

      install

      ## Arch
      yay -S --noconfirm vscodium-bin vscodium-bin-marketplace
      # Windows 10
      scoop install vscodium
      

      config

      VSCodium → Settings → Open Settings (JSON):

      // Windows 10
      {
          "terminal.integrated.profiles.windows": {
              "Cmder": {
                  "path": [
                      "${env:windir}\\Sysnative\\cmd.exe",
                      "${env:windir}\\System32\\cmd.exe"
                  ],
                  "args": [
                      "/k C:\\Users\\User\\Usr\\Opt\\cmder_mini\\vendor\\init.bat"
                  ]
              }
          },
          "terminal.integrated.defaultProfile.windows": "Cmder",
          "terminal.integrated.tabs.enableAnimation": false
      }
      

      reference

      cross-reference

      cache

      resource

      mark

      later

      extra

      cache

      Continue

      config

      1

      • VSCode/VSCodium → Sidebar → Continue → Configure Continue:
        {
          "models": [
            {
              "apiBase": "http://127.0.0.1:11434/",
              "model": "qwen2.5-coder:7b",
              "provider": "ollama",
              "title": "Qwen2.5 Coder"
            }
          ],
          "tabAutocompleteModel": [
            {
              "title": "qwen2.5-coder:3b",
              "provider": "ollama",
              "model": "Qwen2.5 Coder 3B"
            }
          ]
        }
        

      reference


      1. Configuring Ollama and Continue VS Code Extension for Local Coding Assistant

      LTEX+

      config

      1

      1. VSCodium → Extension → Search and install LTeX+
      2. Get ltex-ls-plus-*-windows-x64.zip from releases
      3. Decompress it to ltex-ls-plus\
      4. VSCodium → Settings → Open Settings (JSON) → Add:
            "ltex.ltex-ls.path": "C:\\<full_path>\\ltex-ls-plus",
            "ltex.java.path": "C:\\<full_path>\\ltex-ls-plus\\jdk-21.0.5+11",
        
      5. Restart VSCodium

      1. First Alternative: Download the Offline Version of LTEX+

      optGame

      cross-reference

      mark

      later

      extra

      cache

      resource

      extra

      later

      cache

      Cave Story MD

      Recalbox

      1. Get doukutsu-zh.bin.zip from Cave Story MD - Releases.
      2. Copy it to /recalbox/share/roms/megadrive/.

      Curse of the Arrow

      RetroPie (GPi CASE 2)

      [^1] [^2]

      Get CurseOfTheArrow-V1.8.3-universal.love form itch.io.

      unzip CurseOfTheArrow-V1.8.3-universal.love -d CurseOfTheArrow-V1.8.3-universal
      cd CurseOfTheArrow-V1.8.3-universal
      vim conf.lua
      
      t.window.width = 96*5
      t.window.height = 64*5
      t.window.minwidth = 96
      t.window.minheight = 64
      
      7z a -tzip CurseOfTheArrow-V1.8.3-universal-640x480.love *
      mv CurseOfTheArrow-V1.8.3-universal-640x480.love <RetroPie>/home/pi/RetroPie/roms/love/
      

      doukutsu-rs

      install

      # Arch
      flatpak install flathub io.github.doukutsu_rs.doukutsu-rs
      # Windows 10
      scoop install doukutsu-rs
      

      Hydra Launcher

      Asset

      Katawa Shoujo: Re-Engineered

      install

      # Arch
      flatpak install flathub sh.fhs.ksre
      

      Lutris

      Lutris is an open-source, Linux-focused gaming platform that acts as a centralized launcher and manager for your PC game library. It integrates with major storefronts (such as Steam, GOG, Humble Bundle, and Epic Games Store) and uses community-maintained install scripts to streamline the setup of Windows games through compatibility layers like Wine, emulators, and other runtimes. In short, Lutris aims to simplify installing, organizing, and launching a wide variety of games on Linux from a single interface. [perplexity.ai]

      Lutris是一个开源的、以Linux为中心的游戏平台,充当您PC游戏库的集中启动器和管理器。它与主要的游戏商店(如Steam、GOG、Humble Bundle和Epic Games Store)集成,并使用社区维护的安装脚本,通过兼容层(如Wine)、模拟器和其他运行时来简化Windows游戏的设置。简而言之,Lutris旨在通过单一界面简化在Linux上安装、组织和启动各种游戏的过程。 [perplexity.ai]

      install

      1

      # Vulkan
      sudo pacman -S vulkan-tools
      # Lutris
      sudo pacman -S lutris
      # Wine
      sudo pacman -S wine wine-gecko wine-mono
      sudo pacman -S lib32-gnutls lib32-libldap lib32-mpg123 lib32-openal lib32-v4l-utils lib32-libpulse lib32-alsa-plugins lib32-libxcomposite lib32-libxinerama lib32-ncurses lib32-libxml2 lib32-freetype2 lib32-libpng lib32-sdl2
      sudo pacman -S winetricks
      # DXVK and Other Runners
      yay -S dxvk-bin
      

      2

      # Optional
      sudo pacman -S gamemode
      

      1. How to Install and Use Lutris on Arch Linux

      2. How to Install and Configure Vulkan on Arch Linux

      mari0

      RetroPie (GPi CASE 2)

      Get Source code (zip) from Releases.

      unzip mari0-1.6.2.zip -d mari0-1.6.2
      cd mari0-1.6.2/mari0-1.6.2
      7z a -tzip mari0-1.6.2.love *
      mv mari0-1.6.2.love <RetroPie>/home/pi/RetroPie/roms/love/
      

      reference

      Nxengine-Evo-RPi

      install

      git clone --depth=1 https://github.com/Exarkuniv/RetroPie-Extra.git
      cd RetroPie-Extra
      ./install-extras.sh
      
      1. Choose which modules to install → nxengine-evo.sh → Ok.
      2. RetroPie Setup → Manage packages → Manage experimental packages → nxengine-evo → Install from source.

      NXEngine-evo

      NXEngine-evo is an open-source, upgraded, and refactored game engine that recreates the original engine behind the indie platformer “Cave Story” (also known as Doukutsu Monogatari), originally developed by Daisuke “Pixel” Amaya. It is not a game itself, but an engine designed to run Cave Story using its original data files.
      Key features and enhancements of NXEngine-evo include:

      • Port to SDL2 for modern system compatibility
      • Proper widescreen support up to Full HD resolution
      • Animated character portraits and modernized main menu
      • Custom soundtrack and initial mod support
      • Localization, force feedback, and versions for platforms like PlayStation Vita and Nintendo Switch
      • Many gameplay bugfixes and optimizations for a smoother experience
      • Open-source under the GPL license, encouraging community contribution and modding
        NXEngine-evo maintains fidelity to the gameplay of the original Cave Story while adding quality-of-life features and modern compatibility. It remains a popular choice for playing or modifying Cave Story on modern platforms and with additional features. [perplexity.ai]

      NXEngine-evo是一个开源的升级和重构的游戏引擎,重新创建了独立平台游戏《洞窟物语》(也称为Doukutsu Monogatari)背后的原始引擎,该游戏最初由雨田“Pixel”大辅开发。它本身不是一款游戏,而是一个旨在使用原始数据文件运行《洞窟物语》的引擎。
      NXEngine-evo的主要功能和增强特性包括:

      • 移植到SDL2 以实现现代系统兼容性
      • 适当的宽屏支持,最高可达全高清分辨率
      • 动态角色肖像和现代化的主菜单
      • 自定义音轨和初步的模组支持
      • 本地化、震动反馈,以及针对PlayStation Vita和Nintendo Switch等平台的版本
      • 许多游戏性bug修复和优化,以提供更流畅的体验
      • 根据GPL许可证开源,鼓励社区贡献和模组制作
        NXEngine-evo在保持《洞窟物语》原始游戏性的同时,增加了生活质量的功能和现代兼容性。它仍然是现代平台上玩或修改《洞窟物语》的热门选择,并附带额外的功能。 [perplexity.ai]

      Build local-data

      # Arch
      git clone --depth=1 https://github.com/nxengine/translations
      cd translations
      cp build-local.sh build-local.sh.bak
      vim build-local.sh
      
      # Comment them
      # wget https://github.com/nxengine/tsc-converter/releases/download/v1.1/tsc.tar.gz
      # tar -zxf tsc.tar.gz
      # rm -f tsc.tar.gz
      # 
      # wget https://github.com/nxengine/nx-fontgen/releases/download/v1.3/fontbm.tar.gz
      # tar -zxf fontbm.tar.gz
      # rm -f fontbm.tar.gz
      
      # rm -f fontbm
      # rm -f fontbm.bin
      # rm -f tsc
      # rm -rf assets
      # rm -rf lib
      
      cd local
      wget https://github.com/nxengine/tsc-converter/releases/download/v1.1/tsc.tar.gz
      tar -zxf tsc.tar.gz
      wget https://github.com/nxengine/nx-fontgen/releases/download/v1.3/fontbm.tar.gz
      tar -zxf fontbm.tar.gz
      
      mv <font.ttf> assets/
      
      git clone --depth=1 https://github.com/nxengine/lang_chinese lang_chinese
      cp lang_chinese/metadata lang_chinese/metadata.bak
      vim lang_chinese/metadata
      # Replace `unifont-10.0.06.ttf` to `ark-pixel-12px-proportional-zh_cn.ttf`
      
      cd ..
      ./build-local.sh
      

      Build game

      1

      git clone --depth=1 https://github.com/nxengine/nxengine-evo
      cd nxengine-evo
      mkdir build
      cd build
      cmake -DCMAKE_BUILD_TYPE=Release -DPORTABLE=ON ..
      make
      cd ..
      wget https://www.cavestory.org/downloads/cavestoryen.zip
      unzip cavestoryen.zip
      cp -r ../translations/local/data/lang/chinese/* CaveStory/data/
      cp -r CaveStory/Doukutsu.exe CaveStory/data ./
      build/nxextract
      mkdir desk
      cp -r build/nxengine-evo data desk/
      desk/nxengine-evo
      

      1. Building on Linux

      Pegasus Frontend

      Pegasus is a graphical frontend for browsing your game library and launching all kinds of emulators from the same place. It’s focusing on customizability, cross platform support (including embedded) and high performance. [mmatyas/pegasus-frontend]

      Pegasus是一个图形前端,用于浏览您的游戏库并从同一个地方启动各种模拟器。它专注于可定制性、跨平台支持(包括嵌入式设备)和高性能。 [mmatyas/pegasus-frontend]

      install

      # Arch
      yay -S --noconfirm pegasus-frontend-git
      # Windows 10
      gsudo scoop install k-lite-codec-pack-basic-np
      

      config

      1. Get pegasus-fe*.zip from releases of Pegasus Frontend.

      2. Decompress it to pegasus-fe/.

      3. Get portable RetroArch, liked the Download (64bit).

      4. Decompress it to pegasus-fe/RetroArch/.

      5. Get K-Lite Codec Pack Basic.

      6. Install it.

      7. See 天马G PC+安卓双平台 精简Rom整合包 + 8大主题功能演示教程.

      8. Download the 跳坑者联盟 PegasusG v1.2 完整版.

      9. Goto 【1】安装程序(安卓+PC)\【PC】专用安装包.

      10. Decompress 【Win 10及以上专用】天马G_PC主程序 v1.2 230605.7z.

      11. In RetroArch, copy these dirs to pegasus-fe/RetroArch/:

        cheats
        config
        cores
        downloads
        system
        
      12. In config, copy *.txt to pegasus-fe/config/.

      13. Goto 【2】数据文件(安卓+PC)\【1】基础包_110GB.

      14. Decompress 基础包_110GB Roms.zip.* to pegasus-fe/Roms.

      15. Goto 【3】数据列表(安卓+PC)\【PC】metadata数据列表.

      16. Replace pegasus-fe/Roms/**/metadata.pegasus.txt with them.

      17. If don’t lanch game in pegasus-fe, check the line that write launch: ... of metadata.pegasus.txt. See more on Metadata files.

      18. Clone some themes from Pegasus Theme Gallery to pegasus-fe\config\themes.

      19. Lanch pegasus-fe.exe.

      subl roms/<platform>/metadata.pegasus.txt
      
      # Windows 10
      launch: "{env.PEGASUS_HOME}\RetroArch\retroarch.exe" -L "{env.PEGASUS_HOME}\RetroArch\cores\flycast_libretro.dll" "{file.path}"
      
      # Arch
      launch: "/home/<user>/RetroArch/retroarch" -L "/home/<user>/RetroArch/cores/flycast_libretro.so" "{file.path}"
      

      reference

      cross-reference

      extra

      resource

      mark

      cache

      annex

      pegasus-g

      PPSSPP

      install

      # Arch
      yay -S --noconfirm ppsspp-bin
      # Windows 10
      scoop install ppsspp
      

      RetroArch

      install

      # Arch
      sudo pacman -S retroarch
      # Windows 10
      scoop install retroarch
      

      asset

      Slay the Spire

      reference

      asset

      cache

      resource

      cache

      Steam

      install

      Arch

      sudo vim /etc/pacman.conf
      
      [multilib]
      Include = /etc/pacman.d/mirrorlist
      
      sudo pacman -Syyu
      sudo pacman -S steam
      

      Ubuntu 24 ARM

      1 2 3 4 5

      sudo dpkg --add-architecture armhf
      sudo apt-get update && sudo apt-get upgrade
      sudo apt install gcc-arm-linux-gnueabihf -y
      sudo apt-get install git -y
      sudo apt install cmake -y
      git clone --depth=1 https://github.com/ptitSeb/box64
      cd box64
      mkdir build; cd build; cmake .. -D RPI5ARM64=1 -D CMAKE_BUILD_TYPE=RelWithDebInfo
      make -j4
      sudo make install
      sudo systemctl restart systemd-binfmt
      
      cd ~
      git clone --depth=1 https://github.com/ptitSeb/box86
      cd box86
      mkdir build; cd build; cmake .. -D RPI4ARM64=1 -D CMAKE_BUILD_TYPE=RelWithDebInfo
      make -j4
      sudo make install
      sudo systemctl restart systemd-binfmt
      
      sudo apt install libgdm1:armhf libudev1:armhf libgl1-mesa-dri:armhf libglapi-mesa:armhf libglu1-mesa:armhf libglx-mesa0:armhf mesa-va-drivers:armhf mesa-vdpau-drivers:armhf mesa-vulkan-drivers:armhf libsdl1.2debian:armhf libegl-mesa0:armhf
      sudo apt-get install libc6:armhf -y
      sudo apt install libcurl3t64-gnutls:armhf libcurl4t64:armhf
      sudo apt install mesa-vulkan-drivers -y
      

      reference


      1. How to install Steam on Raspberry Pi

      2. What is the best operating system for a Raspberry Pi to play games and do other heavy graphics tasks?

      3. Upgrade your Raspberry Pi 5 with a powerful graphics card

      4. Use an External GPU on Raspberry Pi 5 for 4K Gaming

      5. Raspberry Pilink

      Wine

      command

      # Uninstall
      wine uninstaller
      

      xone

      install

      yay -S --noconfirm xone-dkms-git xone-dongle-firmware
      

      Or:

      git clone --depth=1 https://github.com/medusalix/xone
      cd xone
      sudo ./install.sh
      sudo xone-get-firmware.sh
      # sudo ./uninstall
      

      ES-DE

      install

      # Arch
      yay -S --noconfirm emulationstation-de
      

      Windows 10

      1. Get ES-DE_*-x64_Portable.zip from Releases.
      2. Decompress it to ES-DE/.

      reference

      cross-reference

      extra

      resource

      cache

      annex

      es-de_01 es-de_02

      Iconic (ES-DE Version)

      install

      cd ES-DE/themes
      git clone --depth=1 https://github.com/Siddy212/iconic-es-de
      

      usage

      • ES-DE → Setting → UI Settings
        • Theme → Iconic
        • Theme Variant → Grid: Boxart

      optWeb

      resource

      mark

      later

      extra

      cache

      cancel

      Album App for Django

      install

      git clone --depth=1 https://github.com/jobsta/albumapp-django
      cd albumapp-django
      uv venv
      .venv\Scripts\activate.bat
      uv pip install django reportbro-lib
      python manage.py makemigrations albums
      python manage.py migrate
      python manage.py compilemessages
      

      usage

      python manage.py runserver localhost:8010
      

      Visit http://localhost:8010/albums.

      annex

      albumapp-django

      altium.js

      install

      git clone --depth=1 https://github.com/gsuberland/altium_js
      cd altium_js
      

      usage

      Open altium_sch.html.

      annex

      altium_js

      AnimeGarden

      ASCIIFlow

      AudioMass

      autoflow


        Awesome-Nano-Banana images

        resource

        Bark Web UI

        install

        git clone --depth=1 https://github.com/makawy7/bark-webui
        cd bark-webui
        uv venv
        .venv\Scripts\activate.bat
        uv pip install torch --index-url https://download.pytorch.org/whl/cu121
        uv pip install .
        uv pip install gradio
        

        usage

        python webui.py
        

        annex

        bark-webui

        bfxr2

        bilingual_book_maker

        git clone --depth=1 https://github.com/yihong0618/bilingual_book_maker
        cd bilingual_book_maker
        uv venv
        .venv\Scripts\activate.bat
        uv pip install -r requirements.txt
        python make_book.py --book_name file.epub --ollama_model llama3.1
        

        blamscamp editor

        Book Translator

        Calcutext

        install

        git clone --depth=1 https://github.com/jaredreich/calcutext
        cd calcutext
        nvm install 16.13.2
        nvm use 16.13.2
        npm install
        npm run build
        

        usage

        serve -s build -p 4321
        

        annex

        calcutext

        changedetection.io

        install

        git clone --depth=1 https://github.com/dgtlmoon/changedetection.io
        cd changedetection.io
        uv venv
        .venv\Scripts\activate.bat
        uv pip install -e .
        

        usage

        python changedetection.py
        # pm2 start changedetection.py --name changedetection --interpreter ".venv/Scripts/python.exe" --cwd "changedetection.io"
        

        annex

        changedetection

        ChartDB

        annex

        chartdb

        Chat2DB

        install

        mkdir Chat2DB
        cd Chat2DB
        vim docker-compose.yml
        # Copy from https://github.com/CodePhiliaX/Chat2DB/blob/main/docker/docker-compose.yml
        

        usage

        sudo docker compose up -d
        

        Visit http://<your_host>:10824, login with user chat2db, password chat2db.

        annex

        chat2db

        ChatGPT API SRT Subtitle Translator

        install

        git clone --depth=1 https://github.com/Cerlancism/chatgpt-subtitle-translator
        cd chatgpt-subtitle-translator
        cd web
        npm ci
        npm run build
        

        usage

        npm run dev
        

        Visit http://localhost:3000/chatgpt-subtitle-translator.

        annex

        chatgpt-subtitle-translator

        Cheatsheet Generator

        install

        git clone --depth=1 https://github.com/nathanlesage/cheatsheet-generator
        cd cheatsheet-generator
        cp examples/<the_one>.config.yml config.yml
        nvm install 16.20.0
        nvm use 16.20.0
        npm install
        npm run build
        

        usage

        Open ./dist/<the_one>.htm.

        annex

        cheatsheet-generator

        CL Calc

        install

        git clone --depth=1 https://github.com/ovk/clcalc
        cd clcalc
        npm install
        node node_modules/gulp/bin/gulp.js
        

        usage

        serve -s dist -p 4321
        

        If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

        Deploy with Vercel

        1. When deploy with Vercel.
        2. The Project → Settings → General → Build & Development Settings:
          Build Command: npm run dist
          Output Directory: dist
          

        annex

        clcalc

        cnvrt

        install

        git clone --depth=1 https://github.com/gregermendle/cnvrt
        cd cnvrt
        pnpm install
        pnpm build
        

        usage

        pnpm start
        

        annex

        cnvrt

        Codi.link

        install

        git clone --depth=1 https://github.com/midudev/codi.link
        cd codi.link
        npm install
        npm run build
        

        usage

        serve -s dist -p 4321
        

        annex

        codi-link

        Comic Book Template Maker

        annex

        comic-template-maker

        CyberChef

        Datasette Lite

        DeepLX Vercel

        DeepWiki-Open

        install

        From source

        git clone --depth=1 https://github.com/AsyncFuncAI/deepwiki-open
        cd deepwiki-open
        
        vim .env
        
        GOOGLE_API_KEY=<your_google_api_key>
        OPENAI_API_KEY=<your_openai_api_key>
        OLLAMA_HOST=<your_ollama_host>
        
        uv venv
        source .venv/bin/activate
        uv pip install poetry==1.8.2 && poetry install -C api
        python -m api.main
        
        # In a new terminal session
        npm install
        npm run build
        npm start
        

        annex

        deepwiki-open

        DevDocs

        install

        git clone --depth=1 https://github.com/freeCodeCamp/devdocs
        cd devdocs
        cp Gemfile Gemfile.bak
        vim Gemfile
        
        ruby '3.4.7'
        
        rbenv update
        rbenv install 3.4.7
        rbenv shell 3.4.7
        rbenv version
        gem install bundler
        bundle install
        

        Arch

        # Docs
        bundle exec thor docs:list
        bundle exec thor docs:download html
        bundle exec thor docs:download --all
        bundle exec thor docs:download --installed
        # Docs be saved into public\docs.
        
        # Sever
        bundle exec rackup
        

        Windows 10

        scoop install curl gzip
        cd <path_to>\Scoop\shims
        cp gzip.exe gunzip.exe
        cp gzip.shim gunzip.shim
        

        Deploy with Docker compose

        1

        mkdir devdocs
        cd devdocs
        vim docker-compose.yml
        
        services:
          devdocs:
            image: ghcr.io/freecodecamp/devdocs:latest
            container_name: devdocs
            ports:
              - "9292:9292"
            restart: always
        
        sudo docker compose up -d
        

        Troubleshoot


        1. Using Docker (Recommended)

        DGM.js

        install

        git clone --depth=1 https://github.com/dgmjs/dgmjs
        cd dgmjs
        npm install
        npm build
        

        usage

        npm run dev
        

        annex

        dgmjs

        diceRoller

        install

        git clone --depth=1 https://github.com/zombieFox/diceRoller
        cd diceRoller
        nvm install 16.20.0
        nvm use 16.20.0
        npm install
        npm run build
        

        usage

        npm run start
        

        annex

        diceroller

        Dify

        install

        1

        git clone --depth=1 https://github.com/langgenius/dify
        cd dify/docker
        cp .env.example .env
        

        usage

        sudo docker compose --env-file .env up -d
        

        Create chatbot and knowledge bases

        2

        1. Dify → <user> → Settings → Model Provider
        2. Ollama → Setup
          Model Name: llama3.1:8b
          Base URL: http://<your_host>:11434
          
        3. Ollama → Add Model
          Model Type: Text Embedding
          Model Name: mxbai-embed-large:latest
          Base URL: http://<host>:11434
          
          Model Type: Text Embedding
          Model Name: jina/jina-embeddings-v2-base-en
          Base URL: http://<host>:11434
          
        4. OpenAI → Setup
          API Key: <apikey>
          API base: https://api.openai.com
          
        5. OpenAI → Show Models
        6. Dify → Studio → Chatbot → Create from Blank
          APP icon & name: llama 3.1
          
        7. Studio → llama 3.1 → <model> CHAT → llama3.1:8b
        8. Dify → Knowledge → Create Knowledge → Upload files → Save & Process → Go to Documents
          Index mode: Economical
          
        9. Studio → llama 3.1 → Context → Add → <knowledge>

        resource

        cache

        annex

        dify


        1. Deploy with Docker Compose

        2. 本地部署Dify基于Llama 3.1和OpenAI创建聊天机器人与知识库

        docTR

        install

        git clone --depth=1 https://github.com/mindee/doctr
        cd doctr
        uv venv
        .venv\Scripts\activate.bat
        # cat demo/pt-requirements.txt
        uv pip install git+https://github.com/mindee/doctr.git#egg=python-doctr[torch,viz]
        uv pip install streamlit>=1.0.0
        

        usage

        set USE_TORCH=1
        streamlit run demo/app.py
        

        annex

        doctr

        drawDB

        Drawflow

        install

        git clone --depth=1 https://github.com/jerosoler/Drawflow
        cd Drawflow
        npm install
        npm run build
        

        usage

        Open ./docs/index.html.

        annex

        drawflow

        Easy Webpage Summarizer

        install

        git clone --depth=1 https://github.com/cobanov/easy-web-summarizer
        cd easy-web-summarizer
        uv venv
        .venv\Scripts\activate.bat
        uv pip install -r requirements.txt
        ollama pull llama3:instruct
        

        usage

        ## As CLI
        python app/webui.py -u <url>
        
        ## As GUI
        python app/webui.py
        

        annex

        easy-web-summarizer

        Ebook Reader

        Deploy with Vercel

        1. When deploy with Vercel.
        2. The Project → Settings.
        • General → Build & Development Settings
          Build Command: pnpm build
          Output Directory: build
          Install Command: pnpm install --frozen-lockfile && pnpm svelte-kit sync
          
        • Root Directory → apps/web.

        ebook2audiobook

        install

        git clone --depth=1 https://github.com/DrewThomasson/ebook2audiobook
        cd ebook2audiobook
        uv venv
        .venv\Scripts\activate.bat
        uv pip isntall -r requirements.txt
        # uv pip install coqui-tts==0.24.2 pydub nltk beautifulsoup4 ebooklib tqdm gradio==4.44.0
        uv python -m nltk.downloader punkt
        uv python -m nltk.downloader punkt_tab
        uv pip install mecab mecab-python3 unidic
        python -m unidic download
        

        usage

        python app.py
        
        python app.py --headless True --use_custom_model True --ebook <ebook_file_path> --voice <target_voice_file_path> --language <language> --custom_model <custom_model_path> --custom_config <custom_config_path> --custom_vocab <custom_vocab_path>
        

        annex

        ebook2audiobook

        Editor

        annex

        editor

        EPUB Manga Creator V2

        install

        git clone --depth=1 https://github.com/wing-kai/epub-manga-creator
        cd epub-manga-creator
        npm install
        npm run build
        

        usage

        serve -s build -p 4321
        

        annex

        epub-manga-creator

        ePubViewer

        install

        git clone --depth=1 https://github.com/pgaskin/ePubViewer
        cd ePubViewer
        

        usage

        serve -s . -p 4321
        # pm2 serve . 4321 --name epubvidewer --spa
        
        1. Visit http://localhost:4000 or http://localhost:4000#book.epub.
        2. If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

        annex

        epubviewer

        Etymology Search

        annex

        etymology-search

        etytree

        install

        git clone --depth=1 https://github.com/agmmnn/etytree
        cd etytree
        yarn
        yarn build
        

        usage

        yarn dev
        

        annex

        etytree

        Excalidraw

        install

        git clone --depth=1 https://github.com/excalidraw/excalidraw
        cd excalidraw
        yarn
        yarn build
        

        usage

        yarn start
        

        annex

        excalidraw

        Excalith Start Page

        install

        git clone --depth=1 https://github.com/excalith/excalith-start-page
        cd excalith-start-page
        yarn
        

        usage

        yarn dev
        # pm2 start yarn --watch --name "excalith-start-page" -- dev
        

        annex

        excalith-start-page

        F5-TTS

        install

        git clone --depth=1 https://github.com/SWivid/F5-TTS
        cd F5-TTS
        uv venv
        .venv\Scripts\activate.bat
        uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
        uv pip install -e .
        

        usage

        uv pip install hf_transfer
        f5-tts_infer-gradio
        

        annex

        f5-tts

        faster-whisper-webui

        install

        1 2 3 4

        git clone https://huggingface.co/spaces/aadnk/faster-whisper-webui
        cd faster-whisper-webui
        uv venv
        .venv\Scripts\activate.bat
        set "CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8"
        echo %CUDA_PATH%
        uv pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu118
        uv pip install -r requirements.txt
        uv pip install -r requirements-fasterWhisper.txt
        uv pip install hf_transfer
        cp config.json5 config.json5.bak
        subl config.json5
        
        "models": [
        	{
        		"name": "medium",
        		"url": "Simple_Speech_Recognition/modelsCache/faster-whisper-medium",
        		"type": "filesystem"
        	},
        	{
        		"name": "large-v2",
        		"url": "Simple_Speech_Recognition/modelsCache/faster-whisper-large-v2",
        		"type": "filesystem"
        	},
        	{
        		"name": "large-v3",
        		"url": "Simple_Speech_Recognition/modelsCache/faster-whisper-large-v3",
        		"type": "filesystem"
        	},
        ]
        "input_audio_max_duration": -1,
        "server_port": 7830,
        "whisper_implementation": "faster-whisper",
        "default_model_name": "medium",
        "vad_parallel_devices": 0,
        "auto_parallel": true,
        "output_dir": "<output_dir>",
        "language": "Chinese",
        

        usage

        ## As CLI
        python cli.py --whisper_implementation "faster-whisper" --vad "silero-vad-skip-gaps" --auto_parallel true --vad_parallel_devices 0 --model "large-v2" --language "Chinese" --initial_prompt="对于普通话句子,以中文简体输出" --diarization_num_speakers 1 --auth_token <hf_token> --output_dir "C:/Users/User/Downloads" <input>
        
        ## As Web UI
        python.exe app.py --input_audio_max_duration -1 --server_name 127.0.0.1 --server_port 7830 --whisper_implementation "faster-whisper" --default_model_name "large-v2" --vad_parallel_devices 0 --auto_parallel true --auth_token <hf_token> --output_dir "C:/Users/User/Downloads"
        

        reference

        annex

        faster-whisper-webui


        1. Running Locally

        2. Enabling custom Japanese model

        3. services.py

        4. Segmentation Fault when loading pyannote/speaker-diarization-3.0 in rockylinux9/python3 environment

        FastGPT

        install

        1

        mkdir fastgpt
        cd fastgpt
        curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json
        curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-pgvector.yml
        

        usage

        sudo docker compose up -d
        

        1. Docker Compose 快速部署

        Favycon

        install

        git clone --depth=1 https://github.com/ruisaraiva19/favycon
        cd favycon
        subl .eslintrc.json
        
        	"rules": {
        		"prettier/prettier": ["error", {'endOfLine': 'auto'} ]
        
        yarn install
        yarn build
        

        usage

        yarn start -- -p 4321
        

        annex

        favycon

        finetuneas

        install

        git clone --depth=1 https://github.com/ozdefir/finetuneas
        cd finetuneas
        

        usage

        serve -s . -p 4321
        

        annex

        finetuneas

        Fish Speech

        1 2

        install

        git clone --depth=1 https://github.com/fishaudio/fish-speech
        cd fish-speech
        uv venv --python 3.12
        .venv\Scripts\activate.bat
        uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
        uv pip install https://github.com/AnyaCoder/fish-speech/releases/download/v0.1.0/triton_windows-0.1.0-py3-none-any.whl
        uv pip install -e .
        uv pip install hf_transfer
        
        1. Create folder checkpoints/.
        2. Download fishaudio/openaudio-s1-mini into checkpoints\openaudio-s1-mini.

        usage

        # As GUI
        python -m tools.run_webui --llama-checkpoint-path "checkpoints/openaudio-s1-mini" --decoder-checkpoint-path "checkpoints/openaudio-s1-mini/codec.pth" --decoder-config-name modded_dac_vq
        

        If serve port used, edit API_FLAGS.txt.

        reference

        annex

        fish-speech


        1. install.md

        2. inference.md

        Flatdraw

        install

        git clone --depth=1 https://github.com/diogocapela/flatdraw
        cd flatdraw
        npm install
        npm run build
        

        usage

        npm run dev
        

        annex

        flatdraw

        Flood

        install

        git clone --depth=1 https://github.com/jesec/flood
        cd flood
        npm install
        npm run build
        

        usage

        pm2 start npm --name "flood" -- run start
        pm2 save
        

        optional

        vim package.json
        
          "script": {
            // Change port
            "start": "node --enable-source-maps --use_strict dist/index.js --host 0.0.0.0 --port 4321",
        

        config

        Visit http://<your_host>/:4321, create account:

        User: <flooduser>
        Password: <flood_passwd>
        Client: qBittorrent
        URL: http://<your_host>:<port>
        Username: <qBittorrent_user>
        Password: <qBittorrent_passwd>
        

        troubleshoot

        Forget username or password

        1. rm -rf ~/.local/shared/flood/.
        2. Reload or re-create flood’s PM2 serve.

        annex

        flood

        Flowchart Fun

        install

        git clone --depth=1 https://github.com/tone-row/flowchart-fun
        cd flowchart-fun
        pnpm install
        pnpm build
        

        usage

        serve -s app/build -p 4321
        # pm2 serve app\build\ 4321 --name flowchart-fun --spa
        

        annex

        flowchart-fun

        FlowGram.AI

        install

        git clone --depth=1 https://github.com/bytedance/flowgram.ai
        cd flowgram.ai
        nvm install lts
        nvm use lts
        npm i -g pnpm@9.12.0 @microsoft/rush@5.140.0
        rush update
        rush build
        

        usage

        rush dev:docs
        rush dev:demo-fixed-layout
        rush dev:demo-free-layout
        

        annex

        flowgram-ai

        Flowise

        annex

        flowise

        FocusTide

        install

        git clone --depth=1 https://github.com/Hanziness/FocusTide
        cd FocusTide
        yarn install
        yarn generate
        

        usage

        serve dist -p 4321
        # pm2 serve dist 4321 --name focustide --spa
        

        If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

        annex

        focustide

        foliate-js

        font combination generator

        This is copy from font combination generator by Mert Cukuren / MIT. Modify for local use.

        annex

        font-combination-generator

        FossFLOW

        annex

        fossflow

        Gif Converter with WASM

        install

        git clone --depth=1 https://github.com/marshallku/gifconverter
        cd gifconverter
        npm install
        npm run build
        

        usage

        npm run dev
        

        annex

        gifconverter

        Gifsicle Wasm Browser

        install

        git clone --depth=1 https://github.com/renzhezhilu/gifsicle-wasm-browser
        cd gifsicle-wasm-browser
        npm install
        

        usage

        serve -s docs -p 4321
        # pm2 serve docs 4321 --name gifsicle-wasm-browser --spa
        

        If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

        annex

        gifsicle-wasm-browser

        GIT.RAWify

        install

        git clone --depth=1 https://github.com/emmanpbarrameda/GIT.RAWify
        cd GIT.RAWify
        

        usage

        serve -s . -p 4321
        # pm2 serve . 4321 --name git-rawify --spa
        

        annex

        git-rawify

        github-search-rss

        Deploy with Github Pages

        1. azu/github-search-rss → Fork → Copy the main branch only (Off) → Create fork.
        2. Fork repo → Actions → Enable.
        3. Settings → Pages → Build and deployment → Branch → gh-pages, /(root) → Save.
        4. Edit BASE_URL, SEARCH_ITEMS in src/RSS.ts:
          const BASE_URL = "https://<user>.github.io/github-search-rss";
          export const SEARCH_ITEMS: RSSItem[] = [
               // For example
              {
                  title: "goldendict",
                  query: "goldendict sort:updated-desc",
                  TYPE: "REPOSITORY",
                  link: `${BASE_URL}/goldendict.json`
              },
              {
                  title: "keypirinha",
                  query: "keypirinha sort:updated-desc",
                  TYPE: "REPOSITORY",
                  link: `${BASE_URL}/keypirinha-repo.json`
              }
          ];
          
        5. Commit changes… → Commit changes.
        6. Wait for actions to run. Then visit https://<user>.github.io/github-search-rss/.

        Graphite

        install

        1

        # Ubuntu 24 ARM
        cargo install cargo-watch
        cargo install wasm-pack
        cargo install -f wasm-bindgen-cli@0.2.99
        sudo apt install libgtk-3-dev libsoup2.4-dev libjavascriptcoregtk-4.0-dev libwebkit2gtk-4.0-dev
        git clone --depth=1 https://github.com/GraphiteEditor/Graphite
        cd Graphite/frontend
        cargo install --force cargo-about
        cargo install --force wasm-opt
        npm install vite --save-dev
        npm run build
        

        usage

        pm2 serve dist 4321 --name graphite --spa
        

        1. Project setup

        Guitar-Editor

        install

        git clone --depth=1 https://github.com/haixiangyan/guitar-tabs-editor
        cd guitar-tabs-editor
        npm install
        npm run build
        

        usage

        npm start
        

        optional

        subl package.json
        
          // Change port (Windows)
          "scripts": {
            "start": "set PORT=4321 && react-scripts start",
        

        annex

        guitar-tabs-editor

        h2m

        install

        git clone --depth=1 https://github.com/island205/h2m
        cd h2m
        

        usage

        Open index.html.

        annex

        h2m

        Headscale-UI

        git clone --depth=1 https://github.com/gurucomputing/headscale-ui
        cd headscale-ui
        # nvm use 18.20.1
        npm install
        npm run build
        npm add -g serve
        

        reference

        cross-reference

        hot-chain-svg

        install

        git clone --depth=1 https://github.com/w1nt3r-eth/hot-chain-svg
        cd hot-chain-svg
        yarn
        

        usage

        yarn start
        

        annex

        hot-chain-svg

        image-editor

        install

        git clone --depth=1 https://github.com/andrepv/image-editor
        cd image-editor
        nvm install 16.20.0
        nvm use 16.20.0
        npm install
        npm run build
        

        usage

        serve -s build -l 4321
        # pm2 serve build 4321 --name image-editor --watch --spa
        

        annex

        image-editor

        IndexTTS2

        install

        git lfs install
        git clone --depth=1 https://github.com/index-tts/index-tts
        cd index-tts
        git lfs pull
        uv sync --all-extras
        uv tool install "huggingface-hub[cli,hf_xet]"
        hf download IndexTeam/IndexTTS-2 --local-dir=checkpoints
        
        uv run tools/gpu_check.py
        
        uv run webui.py
        

        Invoify

        annex

        invoify

        IOPaint

        install

        git clone --depth=1 https://github.com/Sanster/IOPaint
        cd IOPaint/web_app
        # nvm use 22.14.0
        npm install
        npm run build
        cp -r dist/ ../iopaint/web_app
        cd ..
        uv venv --python 3.10
        .venv\Scripts\activate.bat
        uv pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121
        uv pip install -e .
        

        usage

        cd IOPaint/web_app
        npm run dev
        
        # Run in new terminial window
        cd IOPaint
        # uv pip install gfpgan realesrgan rembg realesrgan onnxruntime
        iopaint start --model=lama --port=8080
        

        Optional

        Interactive Segmentation

        iopaint start --model=lama --port=8080 --enable-interactive-seg --interactive-seg-device=cuda
        

        GFPGAN

        uv pip install gfpgan
        iopaint start --model=lama --port=8080 --enable-gfpgan --gfpgan-device cuda
        

        RealESRGAN

        uv pip install realesrgan
        iopaint start --model=lama --port=8080 --enable-realesrgan --realesrgan-model RealESRGAN_x4plus --realesrgan-device cuda
        

        Remove Background

        uv pip install rembg
        iopaint start --model=lama --port=8080 --enable-remove-bg
        

        RestoreFormer

        uv pip install realesrgan
        iopaint start --model=lama --port=8080 --enable-restoreformer --restoreformer-device cuda
        

        Anime Segmentation

        iopaint start --model=lama --port=8080 --enable-anime-seg
        

        annex

        iopaint

        IT-TOOLS

        JS IMAGE CARVER

        install

        git clone --depth=1 https://github.com/trekhleb/js-image-carver
        cd js-image-carver
        subl package.json
        
          "homepage": "",
        
        nvm install 16.20.0
        nvm use 16.20.0
        npm install
        npm run build
        

        usage

        serve -s build -l 4321
        

        annex

        js-image-carver

        jsetymology

        install

        git clone --depth=1 https://github.com/myrriad/jsetymology
        cd jsetymology
        

        usage

        serve -s . -p 4321
        

        annex

        jsetymology

        JSON Crack

        annex

        json-crack

        Khoj

        usage

        # Pip
        uv venv
        .venv\Scripts\activate.bat
        set CMAKE_ARGS="-DGGML_CUDA=on"
        uv pip install "khoj[local]"
        set USE_EMBEDDED_DB="true"
        khoj --anonymous-modes
        

        1

        # Docker compose
        mkdir khoj
        cd khoj
        wget https://raw.githubusercontent.com/khoj-ai/khoj/master/docker-compose.yml
        sudo docker compose up -d
        

        1. Khoj - Self-Host

        Kiwix JS for PWA, Windows and Linux (Electron, NWJS, UWP)

        install

        git clone --depth=1 https://github.com/kiwix/kiwix-js-pwa
        cd kiwix-js-pwa
        npm install
        npm run build
        

        usage

        npm run serve
        # pm2 serve dist 5173 --name kiwix-js-pwa --spa --env production
        
        1. Visit http://localhost:5173
        2. Setting → Use Private File System → Add file(s) → Add to OPFS → Select your .zim → Wait for it to complete.
        3. (Optional) Install PWA.
        4. If you clean up the cache of browser, you need to do it again.

        annex

        kiwix-js-pwa

        クモ

        Langchain-Chatchat

        install

        # Conda
        mkdir Langchain-Chatchat
        cd Langchain-Chatchat
        conda create -n Langchain-Chatchat python=3.10
        conda activate Langchain-Chatchat
        uv pip install langchain-chatchat -U
        

        Langflow

        install

        1

        pipx

        pipx install langflow
        langflow run
        

        Docker Compose

        mkdir langflow
        cd langflow
        wget https://github.com/langflow-ai/langflow/blob/main/docker_example/docker-compose.yml
        sudo docker compose up -d
        

        annex

        langflow


        1. Install Langflow

        LivePortrait

        install

        git clone --depth=1 https://github.com/KwaiVGI/LivePortrait
        cd LivePortrait
        conda create -n LivePortrait python=3.10
        conda activate LivePortrait
        pip install torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 --index-url https://download.pytorch.org/whl/cu121
        pip install -r requirements.txt
        pip install hf_transfer
        pip install -U "huggingface_hub[cli]"
        # set HF_ENDPOINT=https://hf-mirror.com
        huggingface-cli download KwaiVGI/LivePortrait --local-dir pretrained_weights --exclude "*.git*" "README.md" "docs"
        

        usage

        1

        ## As CLI
        python inference.py
        
        ## As GUI
        pip install pydantic==2.8.2
        python app.py --flag_do_torch_compile
        

        annex

        liveportrait


        1. ERROR: Exception in ASGI application

        Local Deep Researcher

        git clone --depth=1 https://github.com/langchain-ai/local-deep-researcher
        cd local-deep-researcher
        uv venv --python 3.11
        .venv\Scripts\activate.bat
        uv pip install -e .
        uv pip install -U "langgraph-cli[inmem]"
        cp .env.example .env
        

        Edit .env.

        langgraph dev
        

        Localpdf.tech

        install

        git clone --depth=1 https://github.com/julianfbeck/localpdfmerger
        cd localpdfmerger
        yarn
        yarn build
        

        usage

        yarn start
        

        optional

        subl package.json
        
          # Change port
          "scripts": {
            "start": "next start -p 4321"
        }
        

        annex

        localpdfmerger

        Look Scanned

        install

        git clone --depth=1 https://github.com/rwv/lookscanned.io
        cd lookscanned.io
        npm install
        npm run build
        

        usage

        serve -s dist -p 4321
        

        If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

        annex

        lookscanned

        lrc_editor

        install

        git clone --depth=1 https://github.com/yiyizym/lrc_editor
        cd lrc_editor
        npm install
        npm audit fix --force
        npm run build
        

        usage

        serve -s docs -p 4321
        

        annex

        lrc_editor

        Manga-Colorizer

        From source

        git clone --depth=1 https://github.com/BinitDOX/Manga-Colorizer
        cd Manga-Colorizer/Backend
        uv venv
        .venv\Scripts\activate.bat
        uv pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121
        uv pip install -r Backend/requirements.txt
        uv pip install einops
        python app-stream.py
        

        Image/Manga Translator

        install

        git clone --depth=1 https://github.com/zyddnys/manga-image-translator
        python -m venv venv
        venv\Scripts\activate.bat
        pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121
        pip install -r requirements.txt
        

        usage

        python -m manga_translator -v --mode web --use-gpu
        

        optional

        subl .env
        
        # Change port
        SAKURA_API_BASE=http://127.0.0.1:5000
        

        annex

        manga-image-translator

        Manga Repack

        install

        git clone --depth=1 https://github.com/Aeroblast/MangaRepack
        cd MangaRepack
        npm install
        npm audit fix --force
        npm run build
        

        usage

        serve -s dist -p 4321
        

        annex

        mangarepack

        markdownlint

        install

        git clone --depth=1 https://github.com/DavidAnson/markdownlint
        cd markdownlint
        npm install
        

        usage

        npm run build-demo
        

        Open ./demo/default.htm.

        annex

        markdownlint

        MeloTTS

        install

        git clone --depth=1 https://github.com/myshell-ai/MeloTTS
        uv venv --python 3.10
        .venv\Scripts\activate.bat
        uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
        uv pip install -e .
        uv pip install hf_transfer
        python -m unidic download
        

        usage

        melo "Hello" temp.wav --language EN
        melo --device cuda --language EN "<text>" temp.wav && ffplay -autoexit temp.wav
        
        # With Web UI
        python melo/app.py
        

        annex

        melotts


          Mermaidv Live Editor

          install

          git clone --depth=1 https://github.com/mermaid-js/mermaid-live-editor
          cd mermaid-live-editor
          yarn install
          yarn build
          

          usage

          serve -s docs -l 4321
          

          annex

          mermaid-live-editor

          MinerU

          Pip

          1

          git clone --depth=1 https://github.com/opendatalab/MinerU
          cd MinerU
          uv venv --python 3.13
          source .venv/bin/activate
          uv pip install .[core]
          

          Docker compose

          2

          # Arch
          # sudo pacman -S nvidia nvidia-utils nvidia-container-toolkit
          mkdir mineru
          cd mineru
          wget https://gcore.jsdelivr.net/gh/opendatalab/MinerU@master/docker/compose.yaml
          sudo docker compose -f compose.yaml --profile gradio up -d
          

          Conda

          # Outdate
          conda create -n MinerU python=3.10
          conda activate MinerU
          pip install -U magic-pdf[full] --extra-index-url https://wheels.myhloli.com
          pip install modelscope
          wget https://gcore.jsdelivr.net/gh/opendatalab/MinerU@master/scripts/download_models.py -O download_models.py
          python download_models.py
          

          usage

          # Cli
          mineru -p <input_path> -o <output_path>
          # WebUI
          mineru-gradio --server-name 0.0.0.0 --server-port 7860
          

          1. Quick Start

          2. Deploying MinerU with Docker

          mini-photo-editor

          annex

          mini-photo-editor

          miniPaint

          install

          git clone --depth=1 https://github.com/viliusle/miniPaint
          cd miniPaint
          npm install
          npm run build
          

          usage

          serve -s . -p 4321
          # pm2 serve . 4321 --name minipaint --spa
          

          annex

          minipaint

          Mokuro reader

          Muser

          Muser is a “smart” music visualizer, made by Jon Shamir. It is an experiment to test how maching learning technology can be used to enhance music visualization.
          The idea for muser and the visualization itself is inspired by Wassily Kandinsky (1866-1944). Generally credited as the pioneer of abstract art, his work is well-known for its musical inspirations. Kandinsky associated specific tones and instruments to shapes and colors, thus “visualizing” a musical composition. [jonshamir/muser]

          Muser是由Jon Shamir制作的“智能”音乐可视化工具。它是一个实验,以测试机器学习技术如何用于增强音乐可视化。
          Muser的构思和可视化本身受到瓦西里·康定斯基(1866-1944)的启发。康定斯基通常被认为是抽象艺术的先驱,他的作品因其音乐灵感而闻名。康定斯基将特定的音调和乐器与形状和颜色关联,从而“可视化”音乐作品。 [jonshamir/muser]

          git clone --depth=1 https://github.com/jonshamir/muser
          cd muser
          

          Create requirements.txt:

          audioread==3.0.1
          librosa==0.8.1
          musicnn==0.1.0
          numpy==1.16.6
          pandas==1.1.5
          scikit-learn==0.24.2
          scipy==1.5.4
          soundfile==0.12.1
          tensorflow==2.3.4
          resampy==0.2.2
          ipython==7.16.3
          
          conda create --name muser python=3.6.13
          conda activate muser
          pip install -r requirements.txt
          pip install matplotlib
          

          Edit tools/tagger.py, playlist-creator.py:

          # %matplotlib inline
          
          python tools/tagger.py
          pip install eyed3
          python tools/playlist-creator.py
          
          npm install
          npm install --save-dev cross-env
          npm run start
          # set NODE_ENV=development && node tools/bundler.js
          

          reference

          muser_batch-script.mp4, (bilibili


            MyIP

            annex

            myip

            nash

            annex

            nash

            NoiseCraft

            install

            git clone --depth=1 https://github.com/maximecb/noisecraft
            cd noisecraft
            npm install
            npm run build
            

            usage

            npm run watch
            

            annex

            noisecraft

            NoteCalc

            install

            git clone --depth=1 https://github.com/bbodi/notecalc3
            cd notecalc3
            # rustup override set nightly-2020-11-17
            # cargo install --force wasm-pack
            # wasm-pack build --release --target no-modules frontend-web
            

            usage

            serve -s . -p 4321
            

            annex

            notecalc3

            Notepad Calculator Prototype

            install

            git clone --depth=1 https://github.com/SteveRidout/notepad-calculator
            cd notepad-calculator
            

            usage

            Open index.html.

            annex

            notepad-calculator

            Ollama Deep Researcher

            install

            git clone --depth=1 https://github.com/langchain-ai/ollama-deep-researcher
            cd ollama-deep-researcher
            cp .env.example .env
            uv venv --python 3.11
            .venv\Scripts\activate.bat
            uv pip install -e .
            uv pip install -U "langgraph-cli[inmem]"
            

            usage

            langgraph dev
            

            annex

            ollama_deep_researcher

            Open WebUI

            install

            # Pip
            uv tool install open-webui --python 3.11
            # uv tool install hf_transfer
            
            # Docker compose
            mkdir open-webui
            cd open-webui
            vim docker-compose.yml
            
            services:
            	open-webui:
            		image: ghcr.io/open-webui/open-webui:main
            		container_name: open-webui
            		ports:
            			# Change port
            			- "8050:8080"
            		environment:
            			OLLAMA_BASE_URL: http://<your_host>:11434
            		volumes:
            			- .data:/app/backend/data
            		restart: always
            

            usage

            # Pip
            open-webui serve
            
            # Docker compose
            sudo docker compose up -d
            

            Visit http://<your_host>:<port>, you may need to wait a few minutes for it to complete initialization.

            optional

            • Open WebUI → User → Admin Panel → Settings → Documents
              • Embedding Model Engine → Ollama
              • Embedding Model → nomic-embed-text:latest

            reference

            asset

            mark

            later

            cache

            annex

            open-webui_01 open-webui_02

            OpenVoice

            annex

            openvoice

            ordered-dither-maker

            install

            git clone --depth=1 https://github.com/seleb/ordered-dither-maker
            cd ordered-dither-maker
            npm install
            npm run build
            

            usage

            serve -s docs -p 4321
            

            If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

            annex

            ordered-dither-maker

            Papra

            insttall

            1

            # Docker compose
            mkdir papra
            cd papra
            vim docker-compose.yml
            
            services:
              papra:
                container_name: papra
                image: ghcr.io/papra-hq/papra:latest
                restart: unless-stopped
                ports:
                  - "1221:1221"
                volumes:
                  - /mnt/<mount_disk>/share/papra/app-data:/app/app-data
                user: "${UID}:${GID}"
            

            1. Using Docker Compose

            Path Motion

            annex

            path-motion

            Rearrange PDF as Duplex Scan

            install

            git clone --depth=1 https://github.com/clemensheithecker/pdf-duplex-scan
            cd pdf-duplex-scan
            npm install
            npm audit fix --force
            npm run build
            

            usage

            serve -s dist -p 4321
            

            annex

            pdf-duplex-scan

            PDF.js

            install

            1

            Install GTK 2.

            pnpm install node-pre-gyp
            git clone --depth=1 https://github.com/mozilla/pdf.js
            cd pdf.js
            npm install
            npm install -g gulp-cli
            gulp generic
            

            usage

            dufs build/generic
            # pm2 serve -s build/generic -p 4321 --name pdfjs --spa
            

            Visit http://localhost:<port>/web/viewer.html or http://localhost:<port>/web/viewer.html?file=<book>.pdf.

            annex

            pdf-js


            1. Error on npm install

            pdf-lib-draw-table

            pdf-margins

            install

            git clone --depth=1 https://github.com/ToyVo/pdf-margins
            cd pdf-margins
            npm install
            npm run build
            

            usage

            serve -s build -p 4321
            

            annex

            pdf-margins

            PDF Narrator

            install

            git clone --depth=1 https://github.com/mateogon/pdf-narrator
            cd pdf-narrator
            uv venv --python 3.12
            .venv\Scripts\activate.bat
            uv pip install torch==2.6.0 torchaudio==2.6.0 torchvision==0.21.0 --index-url https://download.pytorch.org/whl/cu124
            

            usage

            uv pip install deepspeed-0.11.2+cuda124-cp312-cp312-win_amd64.whl
            uv pip install lxml-5.3.0-cp312-cp312-win_amd64.whl
            uv pip install -r requirements.txt
            uv pip install hf_transfer
            python main.py
            

            annex

            pdf-narrator

            PDFMathTranslate

            install

            git clone --depth=1 https://github.com/Byaidu/PDFMathTranslate
            cd PDFMathTranslate
            uv venv --python 3.10
            .venv\Scripts\activate.bat
            uv pip install -e .
            

            usage

            pdf2zh -i
            

            annex

            pdfmathtranslate

            PDFME

            install

            git clone --depth=1 https://github.com/pdfme/pdfme
            cd pdfme
            npm install
            npm run build
            

            usage

            serve -s build -p 4321
            

            annex

            pdfme

            Perplexica

            install

            1

            git clone --depth=1 https://github.com/ItzCrazyKns/Perplexica
            cd Perplexica
            
            # From source
            cd ui
            cp .env.example .env
            npm install
            npm run build
            cd ..
            cp sample.config.toml config.toml
            npm install
            npm run build
            

            2

            # Docker compose
            cp sample.config.toml config.toml
            sudo docker compose up -d
            

            optional

            subl config.toml
            
            [API_ENDPOINTS]
            OLLAMA = "http://127.0.0.1:11434"
            

            annex

            perplexica perplexity


            1. How to Contribute to Perplexica

            2. Getting Started with Docker (Recommended)

            Pic Smaller

            Pixelizer

            This is copy from Pixelizer by Jamie Coulter / MIT. Modify for local use.

            Potluck

            install

            git clone --depth=1 https://github.com/inkandswitch/potluck
            cd potluck
            yarn
            yarn build
            

            usage

            serve -s dist -p 4321
            

            Programming Fonts

            install

            git clone --depth=1 https://github.com/braver/programmingfonts
            cd programmingfonts
            npm install
            

            usage

            serve -s . -p 4321
            

            annex

            programmingfonts

            Prompt Optimizer

            !

            QR code designer

            install

            git clone --depth=1 https://github.com/kochrt/qr-designer
            cd qr-designer
            nvm install 16.20.0
            nvm use 16.20.0
            npm install
            npm run generate
            

            usage

            npm run start
            # pm2 start npm --name "qr-designer" -- run start
            

            optional

            subl nuxt.config.js
            
              // Change port
              server: {
                host: "localhost",
                port: 3003
              },
            

            annex

            qr-designer

            qrframe

            1. Fork zhengkyl/qrframe.
            2. Clone it to local.
            3. Edit repo folder in editor, replace all qrframe.kylezhe.ng in files with <prefix_name>.vercel.app.
            4. <prefix_name>.vercel.app is the same as in Vercel project’s domain setting.

            annex

            qrframe

            Query GPT

            annex

            query_gpt

            QuickPic

            Comment out the line about Inter-Light, Inter-SemiBold in src/app/utils/og-generator.tsx.

            annex

            quickpic

            quiver

            install

            git clone --depth=1 https://github.com/varkor/quiver
            cd quiver
            
            1. Download zip form [KaTeX - Releases] (https://github.com/KaTeX/KaTeX/releases).
            2. Decompress and move katex/ into src/.

            usage

            serve -s src -p 4321
            

            annex

            quiver

            Local RAG Chatbot

            install

            # scoop install ollama ngrok
            git clone --depth=1 https://github.com/datvodinh/rag-chatbot
            cd rag-chatbot
            uv venv
            .venv\Scripts\activate.bat
            uv pip install -e .
            

            usage

            uv pip install hf_transfer
            python -m rag_chatbot --host localhost & ngrok http 4321
            

            annex

            rag-chatbot

            RAGFlow

            install

            sysctl vm.max_map_count
            sudo sysctl -w vm.max_map_count=262144
            git clone --depth=1 https://github.com/infiniflow/ragflow
            cd ragflow
            

            usage

            sudo docker compose -f docker/docker-compose.yml up -d
            docker logs -f ragflow-server
            

            Rclone-Webui-Angular

            annex

            rclone-webui-angular

            readium-js-viewer

            REAFLOW

            install

            git clone --depth=1 https://github.com/reaviz/reaflow
            cd reaflow
            npm install
            

            usage

            npm run start
            

            annex

            reaflow

            recoded

            install

            git clone --depth=1 https://github.com/siddharthroy12/recoded
            cd recoded
            npm install --legacy-peer-deps
            npm run build
            

            usage

            serve -s build -p 4321
            # pm2 serve build 4321 --name recoded --spa
            

            annex

            recoded

            Reference

            install

            1

            git clone --depth=1 https://github.com/Fechin/reference
            cd reference
            npm install
            npm run build
            

            usage

            npm run dev
            # hexo g
            # pm2 serve public 4321 --name reference --watch --spa
            # watchexec -w source\_posts -- hexo g
            

            optional

            subl _config.yml
            
            # Change port
            url: http://localhost
            

            annex

            reference


            1. Watchexec

            RegExr

            install

            git clone --depth=1 https://github.com/gskinner/regexr
            cd regexr
            nvm install 10.21.0
            nvm use 10.21.0
            npm install
            

            usage

            gulp
            # pm2 start "...\gulp-cli\bin\gulp.js" --interpreter "...\.nvm\v10.21.0\node.exe" -n regexr
            

            optional

            subl gulpfile.babel.js
            
            // Change port
            gulp.task("serve", () => {
              browser({
                server: { baseDir: "./deploy/" },
                port: 4321,
              });
            });
            

            Deploy with Docker compose

            1

            mkdir regexr
            cd regexr
            vim docker-compose.yml
            
            services:
              regexr:
                image: gufertum/regexr
            
            sudo docker compose up -d
            

            annex

            regexr


            1. docker-regexr

            reminiflux

            install

            git clone --depth=1 https://github.com/reminiflux/reminiflux
            cd reminiflux
            subl package.json
            
              "scripts": {
                "build": "set GENERATE_SOURCEMAP=false && react-scripts build",
            
            npm install
            npm run build
            

            usage

            serve -s build -p 4321
            # pm2 serve build 4321 --name reminiflux --spa
            
            1. Miniflux → Settings → API Keys → Create a new API key → reminiflux<copy_from>.
            2. Visit localhost:4321
              Host: <your_host>:<port>
              API key: <paste_to>
              

            annex

            reminiflux

            ReportBro Designer

            install

            git clone --depth=1 https://github.com/jobsta/reportbro-designer
            cd reportbro-designer
            npm install
            

            usage

            npm run build-prod
            

            Open ./demos/default.html.

            annex

            reportbro-designer

            RetroAssembly

            annex

            retro-assembly

            Satori

            install

            git clone --depth=1 https://github.com/vercel/satori
            cd satori
            nvm install 16.20.0
            nvm use 16.20.0
            pnpm install
            

            usage

            pnpm dev:playground -- -p 4321
            # set PORT=4321 && pm2 start -n "satori" --cwd "./" "./node_modules/turbo/bin/turbo" -- dev --filter=satori-playground...
            

            annex

            satori

            Scira

            install

            git clone --depth=1 https://github.com/zaidmukaddam/scira
            cd scira
            cp .env.example .env
            vim .env
            
            # From source
            pnpm install
            pnpm dev
            
            # Docker compose
            sudo docker compose --env-file .env up -d
            

            annex

            scira

            Screen Sharing Application

            Scribe OCR

            ! !

            install

            git clone --depth=1 https://github.com/scribeocr/scribeocr
            cd scribeocr
            git submodule update --init --recursive
            npm install
            npx http-server
            

            annex

            scribe-ocr

            Instant Recipe Search

            install

            git clone --depth=1 https://github.com/typesense/showcase-recipe-search
            cd showcase-recipe-search
            

            Windows 10

            rbenv install 2.7.2
            rbenv shell 2.7.2
            gem install bundler -v 2.4.22
            bundle install
            corepack enable
            mv yarn.lock yarn.lock.bk
            yarn
            
            git clone --depth=1 https://github.com/typesense/typesense
            cd typesense
            mkdir build
            cd build
            cmake ..
            make
            mkdir -p ~/typesense-server-data
            ./bin/typesense-server --data-dir ~/typesense-server-data --api-key=xyz --listen-port 8108 --enable-cors
            
            # Require docker
            cp .env.development .env
            set BATCH_SIZE=1000
            yarn run indexer:transformDataset
            yarn run indexer:importToTypesense
            yarn start
            

            troubleshoot

            signal

            annex

            signal

            Signature Pad

            install

            git clone --depth=1 https://github.com/szimek/signature_pad
            cd signature_pad
            npm install
            

            usage

            npm run serve
            

            Deploy with Vercel

            1. When deploy with Vercel.
            2. The Project → Settings → General → Build & Development Settings → Output Directory → docs.

            annex

            signature_pad

            sketch-to-lineart

            install

            git clone --depth=1 https://github.com/seleb/sketch-to-lineart
            cd sketch-to-lineart
            npm install
            npm run build
            

            usage

            serve -s docs -p 4321
            

            If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

            annex

            sketch-to-lineart

            Snippet Box

            install

            git clone --depth=1 https://github.com/pawelmalak/snippet-box
            cd snippet-box
            cd client
            nvm install 16.20.0
            nvm use 16.20.0
            npm install
            cd ..
            subl package.json
            
              "dependencies": {
                "babel-jest": "^26.6.0",
                "babel-loader": "8.1.0",
                "eslint": "^7.11.0",
                "jest": "26.6.0",
                "webpack": "4.44.2",
                "webpack-dev-server": "3.11.1",
            
            npm install
            npm run build
            

            usage

            cd snippet-box/build
            node server.js
            

            Visit localhost:5000.

            annex

            snippet-box

            SQLite Web

            install

            pipx install sqlite-web
            

            usage

            sqlite_web <db_file>
            

            annex

            sqlite-web

            sreadium

            install

            git clone --depth=1 https://github.com/suisuyy/sreadium
            cd sreadium
            
            1. Put *.epub into epub_content/.
            2. Modify `epub_library.opds.

            usage

            serve -s . -p 4321
            # pm2 serve . 4321 --name sreadium --spa
            

            If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

            annex

            sreadium

            StarVector

            1 2

            git clone --depth=1 https://github.com/joanrod/star-vector
            cd star-vector
            conda create -n starvector python=3.11.3 -y
            conda activate starvector
            python -m pip install --upgrade pip wheel setuptools
            set CUDA_PATH="C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.4"
            pip install torch==2.5.1 torchvision==0.20.1 --index-url https://download.pytorch.org/whl/cu124
            pip install -e .
            # pip install -e ".[train]"
            
            python -m starvector.serve.controller --host 127.0.0.1 --port 10000
            

            And:

            python -m starvector.serve.gradio_web_server --controller http://127.0.0.1:10000 --model-list-mode reload --port 7000
            

            And:

            pip install -U "huggingface_hub[cli]"
            huggingface-cli login
            # set HF_ENDPOINT=https://hf-mirror.com
            python -m starvector.serve.model_worker --host 127.0.0.1 --controller http://127.0.0.1:10000 --port 40000 --worker http://127.0.0.1:40000 --model-path joanrodai/starvector-1.4b
            

            annex

            star-vector


            1. Failed to Install flash-attn==2.7.4.post1 with ModuleNotFoundError: No module named ‘torch’ on Pre-Configured Image

            2. Project installation is obscure and not working

            Streamlit Image Crop

            install

            1

            git clone --depth=1 https://github.com/mitsuse/streamlit-image-crop
            cd streamlit-image-crop
            uv python install 3.8.20
            uv venv --python 3.8.20
            .venv\Scripts\activate.bat
            uv pip install poetry
            poetry install
            
            cd streamlit_image_crop/frontend
            nvm install 16.20.0
            nvm use 16.20.0
            npm install
            npm run build
            

            usage

            cd streamlit_image_crop/frontend
            serve -s build -l 4321
            
            # In a new terminal session
            cd streamlit_image_crop
            uv pip install -U click==8
            streamlit run example.py
            

            annex

            streamlit-image-crop


            1. click.get_os_args is deprecated on module ‘click 8.1.0’

            Strike

            annex

            strike

            studio

            SvgPathEditor

            install

            git clone --depth=1 https://github.com/Yqnn/svg-path-editor
            cd svg-path-editor
            npm install
            npm run build
            

            usage

            serve -s dist/svg-path-editor -l 4321
            

            If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

            annex

            svg-path-editor

            SVGEdit

            install

            git clone --depth=1 https://github.com/SVG-Edit/svgedit
            cd svgedit
            npm install
            npm run build
            

            usage

            serve -s dist/editor -l 4321
            

            Deploy with Vercel

            1. When deploy with Vercel.
            2. The Project → Settings → General → Build & Development Settings → Output Directory → dist/editor.

            annex

            svgedit

            SVGOMG

            install

            git clone --depth=1 https://github.com/jakearchibald/svgomg
            cd svgomg
            npm install
            npm run build
            

            usage

            serve -s build -p 4321
            

            annex

            svgomg

            Guitar Tab Editor

            install

            git clone --depth=1 https://github.com/calesce/tab-editor
            cd tab-editor
            npm install
            

            usage

            npm start
            

            optional

            # Change port
            subl server.js
            
            app.listen(4321, 'localhost', function(err) {
              if (err) {
                return console.log(err);
              }
            
              console.log('Listening at http://localhost:4321');
            });
            

            annex

            tab-editor

            Text generation web UI

            annex

            text-generation-web-ui_model text-generation-web-ui_model

            Texthooker UI

            textReader

            tikzcd-editor

            install

            git clone --depth=1 https://github.com/yishn/tikzcd-editor
            cd tikzcd-editor
            npm install
            npm audit fix --force
            npx prettier --write .
            

            usage

            npm run dist
            

            Open dist/tikzcd-editor-v0.9.0/index.html.

            annex

            tikzcd-editor

            tldraw

            install

            git clone --depth=1 https://github.com/tldraw/tldraw
            cd tldraw
            yarn
            

            usage

            yarn dev
            

            Visit http://localhost:5420/develop.

            annex

            tldraw

            ToonCrafter

            install

            git clone --depth=1 https://github.com/sdbds/ToonCrafter-for-windows
            # pyenv install 3.8.10
            # pyenv shell 3.8.10
            # python -m venv venv
            # venv\Scripts\activate.bat
            uv venv --python 3.8.20
            .venv\Scripts\activate.bat
            uv pip install -r requirements-windows.txt
            
            1. Get model.ckpt from Doubiiu/ToonCrafter1.
            2. Put it into checkpoints\tooncrafter_512_interp_v1\model.ckpt.

            usage

            set XFORMERS_FORCE_DISABLE_TRITON="1"
            python gradio_app.py
            

            reference

            cache

            annex

            tooncrafter


            1. [bug]: Error caught was: No module named ‘triton’

            Transformer Explainer

            TBL

            install

            git clone --depth=1 https://github.com/hydropix/TranslateBookWithLLM
            cd TranslateBookWithLLM
            uv venv --python 3.9
            .venv\Scripts\activate.bat
            uv pip install flask flask-cors flask-socketio python-socketio requests tqdm aiohttp lxml ebooklib
            

            usage

            python translation_api.py
            

            annex

            translatebookwithllm

            Url encoder for SVG

            install

            git clone --depth=1 https://github.com/yoksel/url-encoder
            cd url-encoder
            npm install
            npm run build
            

            usage

            npm run start
            # pm2 serve build 4321 --name url-encoder --spa
            

            annex

            url-encoder

            Verba

            install

            git clone --depth=1 https://github.com/weaviate/Verba
            cd Verba
            vim .env
            
            OLLAMA_URL=http://<ollama_host>:11434
            OLLAMA_MODEL=llama3.1
            OLLAMA_EMBED_MODEL=mxbai-embed-large
            

            usage

            sudo docker compose --env-file .env up -d --build
            

            video-gif-web-converter

            install

            git clone --depth=1 https://github.com/nabigraphics/video-gif-web-converter
            cd video-gif-web-converter
            npm install
            npm audit fix --force
            npm run build
            

            usage

            npm start
            

            annex

            video-gif-web-converter

            Villain

            VIM Master

            ! !

            annex

            vim-master

            visionmagic

            install

            git clone --depth=1 https://github.com/visioncortex/visionmagic
            cd visionmagic
            nvm install 16.20.0
            nvm use 16.20.0
            cd webapp/app
            npm install
            cargo install --force wasm-pack
            wasm-pack build
            

            usage

            npm start
            

            annex

            visionmagic

            Vivliostyle Viewer

            install

            1. Get Stable release from Vivliostyle.js Releases.
            2. Decompress it to vivliostyle-viewer.
            cd vivliostyle-viewer
            

            usage

            serve -s viewer -p 4321
            # pm2 serve viewer 4321 --name vivliostyle-viewer --spa
            

            Deploy with Github Pages

            1. Github → Project → Settings → Pages → Build and deployment → Branch → gh-pages.
            2. After deploy, visit https://<user>.github.io/vivliostyle.js/viewer/vivliostyle-viewer.html.

            reference

            VoCSSels

            This is copy from VoCSSels by Jamie Coulter / MIT. Modify for local use.

            Vtracer

            install

            # Web app
            git clone --depth=1 https://github.com/visioncortex/vtracer
            cd vtracer
            nvm install 16.20.0
            nvm use 16.20.0
            cd webapp/app
            npm install
            cargo install --force wasm-pack
            wasm-pack build
            npm run build
            
            # Arch
            yay -S --noconfirm vtracer
            # Cargo
            cargo install --force vtracer
            

            usage

            # Web App
            serve -s . -p 4321
            
            # CLI
            vtracer -i "$1" -o _vtracer.svg
            

            annex

            vtracer_webapp

            Web-Check

            annex

            web-check

            WebVM

            Whisper-WebUI

            install

            git clone --depth=1 https://github.com/jhj0517/Whisper-WebUI
            cd Whisper-WebUI
            uv venv
            .venv\Scripts\activate.bat
            uv pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu121
            uv pip install -r requirements.txt
            uv pip install hf_transfer
            

            usage

            user-start-webui.bat
            

            annex

            whisper-webui

            woah!

            install

            git clone --depth=1 https://github.com/pabueco/woah
            cd woah
            pnpm install
            pnpm build
            

            usage

            serve -s dist -p 4321
            

            If app take up 4321 port, visit chrome://serviceworker-internals/?devtools and unregister it.

            annex

            woah

            Yomi-Reader

            1. Vercel → <project> → Deployments → More → Create Deployment → https://github.com/<user>/Yomi-Reader/tree/gh-pages → Create Deployment.
            2. Deployment gh-pages → Domains → yomi-reader-git-gh-pages**.vercel.app.

            ComfyUI

            With Nvidia

            git clone --depth=1 https://github.com/comfyanonymous/ComfyUI
            cd ComfyUI
            python -m venv .venv
            .venv\Scripts\activate.bat
            pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
            pip install -r requirements.txt
            
            python main.py
            

            With AMD (Cache)

            1

            git clone --depth=1 https://github.com/comfyanonymous/ComfyUI
            cd ComfyUI
            python -m venv .venv
            .venv\Scripts\activate.bat
            pip install -r requirements.txt
            pip install torch-directml
            set HSA_OVERRIDE_GFX_VERSION=10.3.0
            
            python main.py --directml
            

            config

            • ComfyUI → Manager
              • Custom Nodes Manager → Search → Install
              • Install Missing Custom Nodes

            requirement

            cross-reference

            cache

            resource

            mark

            cache


            1. Installing ComfyUI on Windows for AMD GPUs

            UmeAiRT - ComfyUI auto installer

            Personal do

            Put file.json into ComfyUI/user/default/workflows/.

            git clone --depth=1 https://github.com/ltdrdata/ComfyUI-Manager custom_nodes\comfyui-manager
            pip install -r custom_nodes\comfyui-manager\requirements.txt
            git clone --depth=1 https://github.com/ltdrdata/ComfyUI-Impact-Pack custom_nodes\comfyui-impact-pack
            pip install -r custom_nodes\comfyui-impact-pack\requirements.txt
            git clone --depth=1 https://github.com/ltdrdata/ComfyUI-Impact-Subpack custom_nodes\comfyui-impact-subpack
            pip install -r custom_nodes\comfyui-impact-subpack\requirements.txt
            git clone --depth=1 https://github.com/city96/ComfyUI-GGUF custom_nodes\comfyui-gguf
            pip install -r custom_nodes\comfyui-gguf\requirements.txt
            git clone --depth=1 https://github.com/Smirnov75/ComfyUI-mxToolkit custom_nodes\comfyui-mxtoolkit
            git clone --depth=1 https://github.com/pythongosssss/ComfyUI-Custom-Scripts custom_nodes\comfyui-custom-scripts
            git clone --depth=1 https://github.com/kijai/ComfyUI-KJNodes custom_nodes\comfyui-kjnodes
            pip install -r custom_nodes\comfyui-kjnodes\requirements.txt
            git clone --depth=1 https://github.com/kijai/ComfyUI-WanVideoWrapper custom_nodes\comfyui-wanvideowrapper
            pip install -r custom_nodes\comfyui-wanvideowrapper\requirements.txt
            git clone --depth=1 https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite custom_nodes\comfyui-videohelpersuite
            pip install -r custom_nodes\comfyui-videohelpersuite\requirements.txt
            git clone --depth=1 https://github.com/Fannovel16/ComfyUI-Frame-Interpolation custom_nodes\comfyui-frame-interpolation
            pip install -r custom_nodes\comfyui-frame-interpolation\requirements-with-cupy.txt
            git clone --depth=1 https://github.com/rgthree/rgthree-comfy custom_nodes\rgthree-comfy
            pip install -r custom_nodes\rgthree-comfy\requirements.txt
            git clone --depth=1 https://github.com/yolain/ComfyUI-Easy-Use custom_nodes\comfyui-easy-use
            pip install -r custom_nodes\comfyui-easy-use\requirements.txt
            git clone --depth=1 https://github.com/lldacing/ComfyUI_PuLID_Flux_ll custom_nodes\comfyui_pulid_flux_ll
            pip install -r custom_nodes\comfyui_pulid_flux_ll\requirements.txt
            pip install insightface==0.7.3
            pip install git+https://github.com/rodjjo/filterpy
            pip install onnxruntime==1.19.2 onnxruntime-gpu==1.17.1
            git clone --depth=1 https://github.com/facok/ComfyUI-HunyuanVideoMultiLora custom_nodes\comfyui-hunyuanvideomultilora
            git clone --depth=1 https://github.com/WASasquatch/was-node-suite-comfyui custom_nodes\was-node-suite-comfyui
            pip install -r custom_nodes\was-node-suite-comfyui\requirements.txt
            git clone --depth=1 https://github.com/kijai/ComfyUI-Florence2 custom_nodes\comfyui-florence2
            pip install -r custom_nodes\comfyui-florence2\requirements.txt
            git clone --depth=1 https://github.com/yuvraj108c/ComfyUI-Upscaler-Tensorrt custom_nodes\comfyui-upscaler-tensorrt
            pip install -r custom_nodes\comfyui-upscaler-tensorrt\requirements.txt
            git clone --depth=1 https://github.com/pollockjj/ComfyUI-MultiGPU custom_nodes\comfyui-multigpu
            git clone --depth=1 https://github.com/Flow-two/ComfyUI-WanStartEndFramesNative custom_nodes\comfyui-wanstartendframesnative
            git clone --depth=1 https://github.com/alexopus/ComfyUI-Image-Saver custom_nodes\comfyui-image-saver
            git clone --depth=1 https://github.com/ssitu/ComfyUI_UltimateSDUpscale custom_nodes\comfyui_ultimatesdupscale
            git clone --depth=1 https://github.com/Fannovel16/comfyui_controlnet_aux custom_nodes\comfyui_controlnet_aux
            pip install -r custom_nodes\comfyui_controlnet_aux\requirements.txt
            git clone --depth=1 https://github.com/XLabs-AI/x-flux-comfyui custom_nodes\x-flux-comfyui
            pip install -r custom_nodes\x-flux-comfyui\requirements.txt
            git clone --depth=1 https://github.com/1038lab/ComfyUI-RMBG custom_nodes\comfyui-rmbg
            # https://github.com/IDEA-Research/GroundingDINO/issues/347
            pip install groundingdino-py-0.4.0.zip
            pip install -r custom_nodes\comfyui-rmbg\requirements.txt
            
            git clone https://github.com/NVIDIA/apex
            cd apex
            git branch -a
            git checkout -b 24.04.01-devel origin/24.04.01-devel
            pip install -v --no-cache-dir --no-build-isolation .
            cd ..
            # Download .whl from https://hf-mirror.com/UmeAiRT/ComfyUI-Auto_installer/tree/main/whl
            pip install triton-3.3.0-py3-none-any.whl
            pip install triton-windows
            pip install mpmath==1.3.0 xformers==0.0.30
            # Download .whl from https://huggingface.co/Panchovix/sageattention2.1.1-blackwell2.0-windows-nightly/blob/main/sageattention-2.1.1-cp312-cp312-win_amd64.whl
            pip install sageattention-2.1.1-cp312-cp312-win_amd64.whl
            # pip install apex-0.1-py3-none-any.whl mpmath-1.3.0-py3-none-any.whl sageattention-2.1.1-cp312-cp312-win_amd64.whl triton-3.3.0-py3-none-any.whl xformers-0.0.30%2B3abeaa9e.d20250426-cp312-cp312-win_amd64.whl
            python main.py --windows-standalone-build --lowvram --use-sage-attention
            

            Download models

            # From https://hf-mirror.com/UmeAiRT/ComfyUI-Auto_installer/tree/main/models/diffusion_models/FLUX
            # From https://hf-mirror.com/UmeAiRT/ComfyUI-Auto_installer/tree/main/models/unet/FLUX
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/clip/clip_l.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/clip/longclip-L.pt?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/clip/t5-v1_1-xxl-encoder-Q3_K_L.gguf?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/clip/t5xxl_fp8_e4m3fn.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/clip/ViT-L-14-TEXT-detail-improved-hiT-GmP-TE-only-HF.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/clip_vision/clip_vision_h.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/clip_vision/sigclip_vision_patch14_384.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/controlnet/diffusion_pytorch_model_promax.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/controlnet/Shakker-LabsFLUX1-dev-ControlNet-Union-Pro.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/pulid/pulid_flux_v0.9.0.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/style_models/flux1-redux-dev.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/upscale_models/RealESRGAN_x4plus.pth?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/upscale_models/RealESRGAN_x4plus_anime_6B.pth?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/vae/ae.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/xlabs/controlnets/flux-canny-controlnet-v3.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/xlabs/controlnets/flux-depth-controlnet-v3.safetensors?download=true
            https://huggingface.co/UmeAiRT/ComfyUI-Auto_installer/resolve/main/models/xlabs/controlnets/flux-hed-controlnet-v3.safetensors?download=true
            https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Ume_Sky/resolve/main/ume_sky_v2.safetensors?download=true
            https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Modern_Pixel_art/resolve/main/ume_modern_pixelart.safetensors?download=true
            https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Romanticism/resolve/main/ume_classic_Romanticism.safetensors?download=true
            https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Impressionism/resolve/main/ume_classic_impressionist.safetensors?download=true
            https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Ume_J1900/resolve/main/umej1900.safetensors?download=true
            https://huggingface.co/UmeAiRT/FLUX.1-dev-LoRA-Ume_Knight/resolve/main/ume_gachaak.safetensors?download=true
            

            Lobe Chat

            An open-source, modern design ChatGPT/LLMs UI/framework. Supports speech synthesis, multi-modal, and extensible (function call) plugin system. One-click FREE deployment of your private OpenAI ChatGPT/Claude/Gemini/Groq/Ollama chat application. [lobehub/lobe-chat]

            一个开源的现代设计AI代理工作空间。支持多个AI提供商、知识库(文件上传/RAG)、一键安装MCP市场以及工件/思维。可一键免费部署您的私有AI代理应用程序。 [lobehub/lobe-chat]

            install

            1

            git clone --depth=1 https://github.com/lobehub/lobe-chat
            cd lobe-chat
            pnpm install
            # pnpm add next@latest
            # pnpm dev
            set NODE_OPTIONS=--max-old-space-size=4096
            pnpm build
            

            usage

            pnpm start
            # pm2 start pnpm --name lobe-chat -- run start
            

            Deploy with Docker compose

            2

            mkdir lobe-chat
            cd lobe-chat
            vim docker-compose.yml
            # Copy from https://lobehub.com/docs/self-hosting/platform/docker-compose#run-docker-compose-deployment-command
            # sudo docker compose pull
            sudo docker compose up -d
            

            reference

            cross-reference

            extra

            resource

            mark

            extra

            cache


            1. Technical Development Getting Started Guide - LobeHub

            2. Docker Compose Deployment Guide - LobeHub

            Lobe Chat Server Database

            install

            1

            mkdir lobe-chat-database
            cd lobe-chat-database
            # sudo rm -rf data
            # sudo rm -rf s3_data
            bash <(curl -fsSL https://lobe.li/setup.sh) -l en
            # You will see the information following and save them for using it later.
            
            Security secret generation results are as follows:
            LobeChat:
            	- URL: http://localhost:3210
            	- Username: user
            	- Password: <password>
            Casdoor:
            	- URL: http://localhost:8000
            	- Username: admin
            	- Password: <password>
            
            Minio:
            	- URL: http://localhost:9000
            	- Username: admin
            	- Password: <password>
            
            vim docker-compose.yml
            # Copy from https://lobehub.com/docs/self-hosting/platform/docker-compose#run-docker-compose-deployment-command
            
            # Replace string `localhost` to `<your_ip>` for using on local. `<local_domain>` seems not work here.
            cp .env .env.bak
            # sed -i -e 's/3210/3310/g' -e 's/9000/9100/g' -e 's/9001/9101/g' -e 's/8000/8100/g' .env
            sed -i 's/localhost/<your_ip>/g' .env
            

            usage

            sudo docker compose up -d
            
            1. Visit http://<your_ip>:8000, login with admin and <password>.
            2. Casdorr → Identity → Applications → LobeChat → Edit.
            3. Redirect URLs → Add → http://<your_ip>:3210/api/auth/callback/casdoor → Save & Exit.

            reference


            1. Deploying LobeChat Server Database Version with Docker Compose

            Stable Diffusion web UI

            A web interface for Stable Diffusion, implemented using Gradio library. [AUTOMATIC1111/stable-diffusion-webui]

            一个Stable Diffusion的网络界面,使用Gradio库实现。 [AUTOMATIC1111/stable-diffusion-webui]

            install

            1 2 3 4

            git clone --depth=1 https://github.com/AUTOMATIC1111/stable-diffusion-webui
            cd stable-diffusion-webui
            python -m venv venv
            venv\Scripts\activate.bat
            pip install torch torchvision torchaudio xformers --index-url https://download.pytorch.org/whl/cu121
            subl webui-user.bat
            
            set COMMANDLINE_ARGS=--xformers --port <port>
            set XFORMERS_MORE_DETAILS=1
            

            Download type Checkpoint * and put file *.safetensors into models/Stable-diffusion. Liked Earth Satellite Image Map Generator Mix.

            usage

            pip install hf_transfer
            webui-user.bat
            

            Install extension

            1. Extensions → Available → Load from → Search and Install.
            2. Extensions → Install from URL.
            3. Extensions → Installed → Apply and restartUI.

            reference

            cross-reference

            cache

            resource

            mark

            cache

            help

            - ,  
            	提示词分隔符
            - _   
            	连词
            - 75  
            	最好控制在75单词以内
            - ()  
            	控制权重;格式为`提示词:权重`;数值建议为0.3-1.5
            - 1   
            	默认权重;提示词在数组中越靠前权重越高
            - []  
            	控制生效时间;格式为`提示词:0-1`,表示时间外生效;或者`提示词::0-1`,表示时间内生效;或者`提示词1:提示词2:0-1`
            - \|  
            	交替采样
            - <>  
            	控制Lora;格式为`lora:触发词:权重`
            

            annex

            stable-diffusion-webui


            1. Manual Installation

            2. How on earth can I install xformers?

            3. Installing xFormers

            4. Command Line Arguments and Settings

            Stable Diffusion web UI for AMDGPUs

            install

            git clone --depth=1 https://github.com/lshqqytiger/stable-diffusion-webui-amdgpu
            cd stable-diffusion-webui-amdgpu
            python -m venv .venv
            .venv\Scripts\activate.bat
            
            subl webui-user.bat
            
            set COMMANDLINE_ARGS="--use-directml"
            

            usage

            pip install hf_transfer
            webui-user.bat
            

            os

            reference

            cross-reference

            mark

            extra

            cache

            resource

            cache

            Dotfiles

            imilar to shells, many other applications store their configuration in files that start with a dot (.). They are hidden files in Linux and Unix-like operating systems. Developers and sysadmins commonly use the term “dotfiles” specifically for the subset of the hidden files that are relevant for configuring the applications and utilities that we care about. Dotfiles are typically scattered in the user home directory (~/) or other application-specific locations between other files and folders.
            As with almost anything, we typically want these files to be under some version control system so that we can share them between multiple computers or revert them to a previously working configuration. There are multiple ways to achieve that, but the most common approach is to keep all dotfiles together in one folder and use a version control system like Git to track this folder as a repository. [Petr Stříbný, “Command Line Handbook”]

            类似于shell,许多其他应用程序将其配置存储在以点(.)开头的文件中。这些是在Linux和类Unix操作系统中的隐藏文件。开发人员和系统管理员通常将“dotfiles”这个术语专门用于指代与我们关心的应用程序和工具配置相关的隐藏文件子集。
            dotfiles通常散布在用户的主目录(~/)或其他特定于应用程序的位置,和其他文件和文件夹混在一起。与几乎所有事物一样,我们通常希望这些文件在某个版本控制系统下,以便可以在多台计算机之间共享它们或将它们恢复到之前的工作配置。有多种方法可以实现这一点,但最常见的方法是将所有dotfiles放在一个文件夹中,并使用像Git这样的版本控制系统来将该文件夹跟踪为一个代码库。 [Petr Stříbný, “Command Line Handbook”]

            reference

            File Permission

            The output uses characters like r for reading, w for writing, and x for executing files. The combination of these operations can also be represented by a single number, called octal notation. We will use the proper number later to change the permissions.
            Allowed operations | Number
            •                         | :-
              

            Nothing (—) | 0 Execute (–x) | 1 Write (-w-) | 2 Read (r–) | 4 Write and execute (-wx) | 3 Read and execute (r-x) | 5 Read and write (rw-) | 6 Read, write, and execute (rwx) | 7
            When we put together the proper numbers for the user owner, group owner and other users, we will arrive at a three digit number, like 400 for r-------- or 777 for rwxrwxrwx. [Petr Stříbný, “Command Line Handbook”]

            输出使用像r(读取)、w(写入)和x(执行文件)这样的字符。这些操作的组合也可以用一个称为八进制表示法的数字来表示。我们稍后会使用正确的数字来更改权限。
            允许的操作 | 数字
            • | :- 无 (—) | 0 执行 (–x) | 1 写入 (-w-) | 2 读取 (r–) | 4 写入和执行 (-wx) | 3 读取和执行 (r-x) | 5 读取和写入 (rw-) | 6 读取、写入和执行 (rwx) | 7
              当我们将用户拥有者、组拥有者和其他用户的正确数字组合在一起时,最终会得到一个三位数,比如400代表r--------或者777代表rwxrwxrwx。 [Petr Stříbný, “Command Line Handbook”]

            Android TV

            reference

            Armbian

            install

            1 2

            Login with user root, password 1234.

            sudo apt update
            sudo apt upgrade
            sudo apt list --installed
            

            1. Armbian Quick Start Guide

            2. armbian - BIGTREETECH CB1

            Battize

            optional

            ujust setup-decky ACTION="install"
            ujust enable-tailscale
            sudo reboot
            sudo tailscale up
            

            Game stream

            ujust setup-sunshine
            
            On Windows 10:
            netsh advfirewall firewall add rule name="GameStream UDP" dir=in protocol=udp localport=48010 action=allow
            netsh advfirewall firewall add rule name="GameStream TCP" dir=in protocol=tcp localport=48000,48010 action=allow
            

            reference

            Home Assistant

            reference

            annex

            home-assistant

            OSMC

            reference

            postmarketOS

            1. Windows 10 → 计算机管理 → 系统工具 → 设备管理器 → 便携设备 → ONEPLUS A5010
            2. 驱动程序 → 更新驱动程序 → 浏览我的电脑以查找驱动程序 → usb_driver\
            1. OnePlus 5 → 设置 → 关于手机 → 版本号 → 点击7下
            2. 设置 → 开发者选项 → OEM解锁 → 启用
            3. 拔掉USB → 电源键+音量上键 → FastBoot Mode
            4. 插上USB → 在PC上运行fastboot oem unlock

            reference

            Raspberry Pi OS

            install

            1

            sudo apt update
            sudo apt full-upgrade
            sudo reboot
            
            sudo rpi-update
            sudo reboot
            
            sudo rpi-eeprom-update
            
            sudo apt install vim
            sudo vim /boot/firmware/config.txt
            
            # Add on bottom
            [all]
            # dtoverlay=disable-wifi
            # dtoverlay=disable-bt
            dtparam=pciex1_gen=3
            dtparam=cooling_fan=on
            dtparam=fan_temp0=50000
            dtparam=fan_temp0_hyst=4000
            dtparam=fan_temp0_speed=50
            dtparam=fan_temp1=60000
            dtparam=fan_temp1_hyst=4000
            dtparam=fan_temp1_speed=100
            dtparam=fan_temp2=65000
            dtparam=fan_temp2_hyst=4000
            dtparam=fan_temp2_speed=150
            dtparam=fan_temp3=70000
            dtparam=fan_temp3_hyst=5000
            dtparam=fan_temp3_speed=200
            

            Use repository mirror (Optional)

            2

            sudo cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.list.bak
            sudo nano /etc/apt/sources.list.d/raspi.list
            
            deb https://mirrors.ustc.edu.cn/debian bullseye main contrib non-free
            # deb-src https://mirrors.ustc.edu.cn/debian bullseye main contrib non-free
            deb https://mirrors.ustc.edu.cn/debian bullseye-updates main contrib non-free
            # deb-src https://mirrors.ustc.edu.cn/debian bullseye-updates main contrib non-free
            # deb https://mirrors.ustc.edu.cn/debian bullseye-backports main contrib non-free
            # deb-src https://mirrors.ustc.edu.cn/debian bullseye-backports main contrib non-free
            

            reference

            cross-requirement

            annex

            raspberry-pi-os


            1. Installing Raspberry Pi OS on an NVMe SSD (Command-Line Style)

            2. USTC Mirror Help - Raspbian

            Recalbox

            usage

            • Menu → Controller settings → Pair a bluetooth controller.
            • Menu → UI Settings
              • Update Games Lists.
              • Game Filters → Hide Preinstalled Games.

            optional

            Change theme

            Download theme into share/themes.

            Enable SSH

            1. Menu → Network Name → Enable WiFi → On.
            2. Network Name → <ssid>.
            3. WiFi Password → <password> → Start.
            4. Connect with:
              host: recalbox (or ip-address)
              port: 22
              username: root
              password: recalboxroot
              

            reference

            cross-reference

            RetroPie

            Pi OS (RPI-5)

            1 2

            install

            sudo apt install rpi-imager
            wget https://downloads.raspberrypi.com/raspios_lite_arm64/images/raspios_lite_arm64-2025-05-13/2025-05-13-raspios-bookworm-arm64-lite.img.xz
            lsblk
            sudo rpi-imager --cli --first-run-script ./firstrun.sh 2025-05-13-raspios-bookworm-arm64-lite.img.xz /dev/nvmeXnX
            sudo shutdown now
            
            sudo apt update
            sudo apt upgrade
            sudo raspi-config
            

            Locallisation Options → Locale → Enter <Space> to select/unselect → en_US-UTF-8 UTF-8 → OK → en_US-UTF-8 → OK → Finish.

            sudo reboot now
            
            sudo update-locale LANGUAGE="en_US:en"
            sudo update-locale LC_ALL=en_US.UTF-8
            sudo reboot now
            
            locale
            
            sudo apt install git lsb-release
            git clone --depth=1 https://github.com/RetroPie/RetroPie-Setup
            cd RetroPie-Setup
            chmod +x retropie_setup.sh
            sudo ./retropie_setup.sh
            
            1. Basic Install → Yes
            2. Update → Yes

            setup

            sudo ~/RetroPie-Setup/retropie_setup.sh
            # In EmulationStation, you can clink `<Start>` → RetroPie Configuration → RestroPie Setup
            
            1. Configuration/tools
              • autostart → Start EmulationStation at boot → OK.
              • bluetooth
                1. Pair and Connect to Bluetooth Device → <your_controller> → OK → DisplayYesNo.
                2. (Optional) Configurate bluetooth connect mode → boot → OK.
              • (Optional) wifi → Connect to WiFi network → <your_wifi> → Entry <your_wifipasswd> → Ok.
              • (Optional) samba
                1. Install RetroPie Samba shares → Ok.
                2. Manually edit /etc/samba/smb.conf → workgroup = SMBGPRP.
                3. Restart Samba service.
                4. Default Samba Shares and paths:
                  • roms, /home/user/RetroPie/roms
                  • bios, /home/user/RetroPie/BIOS
                  • configs, /opt/retropie/configs
                  • splashscreens /home/user/RetroPie/splashscreens
            2. Perform reboot

            GPi CASE 2

            setup

            3 4

            1. Connect to a keyboard.
            2. → RetroPie (Configuration)
            3. On PC, connect with:
              host `retropie` (or ip-address)
              port `22`
              username `pi`
              password `raspberry`
              

            optional

            Bluetooth adapter

            5

            sudo apt install bluetooth pi-bluetooth bluez
            sudo vim /boot/firmware/config.txt
            
            # Add on bottom
            [all]
            dtoverlay=disable-bt
            
            sudo reboot
            

            Enable Xbox controller adapter

            6

            git clone --depth=1 https://github.com/medusalix/xow
            cd xow
            make BUILD=RELEASE
            sudo make install
            sudo apt install cabextract
            chmod +x ./firmware.sh
            sudo ./firmware.sh
            sudo systemctl enable --now xow
            sudo systemctl status xow
            # sudo systemctl stop xow
            # sudo systemctl disable xow
            # sudo make uninstall
            

            Enable Pegasus Frontend

            7

            1. RetroPie (Configuration) → RetroPie Setup → Configuration/tools.
              1. Manage packages → Manage experimental packages → pegasus-fe → Install from pre-compiled binary.
              2. autostart → Manally edit /opt/retropie/configs/all/autostart.sh → pegasus-fe.
            2. Reboot.

            Emulator Löve (Experimental)

            8 9

            1. RetroPie (Configuration) → RetroPie Setup → Manage packages → Manage optional packages → love-0.10.2 or love.
            2. Add <game>.love <path_to>/roms/love/.

            usage

            1. Configure keymap: <Start> → Main Menu → Configure Input → Hold a key on controller to set.
            2. Refresh roms: <Start> → Main Menu → Quit → Restart EmulationStation → Game listing will be refreshing.

            reference

            cross-reference

            1. gpi-case-2.md
            2. raspberry-pi-os.md

            annex

            retropie


            1. Configure_OS.md

            2. Install_RetroPie.md

            3. Retro Gaming With RetroPie, GPi CASE 2, and a Raspberry Pi

            4. RetroPie - SSH

            5. Bluetooth on the Raspberry

            6. xow

            7. Pegasus Docs - Platform Notes: Raspberry

            8. RetroPie Docs - Love

            9. PyGame LÖVE (love2d) in RecalBox

            ubuntu-22-arm

            Ubuntu 22 ARM

            Disable WiFi

            1 2

            sudo ifconfig eth0 up
            sudo ifconfig wlan0 down
            

            But it seems don’t work.

            sudo rm /etc/netplan/50-cloud-init.yaml
            sudo vim /etc/netplan/00-installer-config.yaml
            
            network:
              version: 2
              renderer: networkd
              ethernets:
                eth0:
                  dhcp4: true
                  optional: true
              wifis:
                wlan0:
                  dhcp4: true
                  optional: false
                  access-points:
                    "<ssid>":
                      password: "<password>"
                      hidden: true
            
            sudo chmod 600 /etc/netplan/00-installer-config.yaml
            sudo netplan generate
            sudo netplan --debug apply
            sudo reboot
            
            ip a
            sudo ifconfig wlan0 down
            

            Install Nerd Font (Cache)

            3

            sudo vim /etc/fonts/conf.d/50-enable-fixed.conf
            
            <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
            <fontconfig>
              <selectfont>
                <acceptfont>
                  <pattern>
                    <patelt name="<font_family>"><string>fixed</string></patelt>
                  </pattern>
                </acceptfont>
              </selectfont>
            </fontconfig>
            
            sudo dpkg-reconfigure fontconfig
            
            wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.3.0/JetBrainsMono.tar.xz
            tar -xJvf JetBrainsMono.tar.xz
            rm README.md
            rm OFL.txt
            mv JetBrains** ~/.local/share/fonts
            

            annex

            ubuntu-22-arm


            1. Configure a Static IP address for WIFI using Netplan in Ubuntu Server 22.04 on a HP Pavillion Desktop 510-p051a

            2. No internet connection after ubuntu server 20.04 install, ifconfig not available

            3. ubuntu wiki - Fonts

            Ubuntu

            install

            sudo apt update
            sudo apt upgrade -y
            # sudo apt-get clean
            # sudo apt-get autoremove
            
            timedatectl set-timezone Asia/Shanghai
            

            optional

            Use repository mirror

            1

            mkdir -p /etc/apt/sources.list.d
            sudo cp /etc/apt/sources.list.d/ubuntu.sources /etc/apt/sources.list.d/ubuntu.sources.bak
            sudo vim /etc/apt/sources.list.d/ubuntu.sources
            
            # Ubuntu 22 ARM
            Types: deb
            URIs: https://mirrors.ustc.edu.cn/ubuntu-ports
            Suites: jammy jammy-updates jammy-backports
            Components: main restricted universe multiverse
            Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
            
            Types: deb
            URIs: https://mirrors.ustc.edu.cn/ubuntu-ports
            Suites: jammy-security
            Components: main universe restricted multiverse
            Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
            
            # Ubuntu 24 ARM
            Types: deb
            URIs: https://mirrors.ustc.edu.cn/ubuntu-ports
            Suites: noble noble-updates noble-backports
            Components: main restricted universe multiverse
            Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
            
            Types: deb
            URIs: https://mirrors.ustc.edu.cn/ubuntu-ports
            Suites: noble-security
            Components: main universe restricted multiverse
            Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
            
            # Ubuntu 24
            Types: deb
            URIs: https://mirrors.ustc.edu.cn/ubuntu
            Suites: noble noble-updates noble-backports
            Components: main restricted universe multiverse
            Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
            
            Types: deb
            URIs: https://mirrors.ustc.edu.cn/ubuntu
            Suites: noble-security
            Components: main restricted universe multiverse
            Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
            
            sudo apt update
            

            1. USTC Mirror Help - Ubuntu

            Arch Linux

            pre-install

            install

            1

            systemctl stop reflector.service
            
            timedatectl set-ntp true
            
            cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
            vim /etc/pacman.d/mirrorlist
            
            Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
            
            lsblk
            cfdisk /dev/nvme?n1
            
            size        | type             | comment
            1G          | EFI System       | /boot
            32G*0.6=18G | Linux Swap       |
            free        | Linux filesystem | /
            
            mkfs.fat -F32 /dev/nvme?n1p1
            mkswap /dev/nvme?n1p2
            mkfs.btrfs -L Arch /dev/nvme?n1p3
            
            mount -t btrfs -o compress=zstd /dev/nvme?n1p3 /mnt
            btrfs subvolume create /mnt/@
            btrfs subvolume create /mnt/@home
            btrfs subvolume list -p /mnt
            umount /mnt
            
            mount -t btrfs -o subvol=/@,compress=zstd /dev/nvme?n1p3 /mnt
            mkdir -p /mnt/home
            mount -t btrfs -o subvol=/@home,compress=zstd /dev/nvme?n1p3 /mnt/home
            mkdir -p /mnt/boot
            # Mount EFI
            mount /dev/nvme?n1p1 /mnt/boot
            # Mount Linux Swap
            swapon /dev/nvme?n1p2
            
            pacstrap /mnt base base-devel linux linux-firmware btrfs-progs
            
            pacstrap /mnt networkmanager vim sudo zsh zsh-completions
            
            genfstab -U /mnt > /mnt/etc/fstab
            
            arch-chroot /mnt
            

            2

            vim /etc/hostname
            
            arch
            
            vim /etc/hosts
            
            # Add
            127.0.1.1	arch.local arch
            

            3

            # timedatectl set-timezone Asia/Shanghai
            ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
            hwclock --systohc
            

            4 5

            vim /etc/locale.gen
            
            # Find and uncomment
            en_US.UTF-8 UTF-8
            zh_CN.UTF-8 UTF-8
            
            locale-gen
            
            vim /etc/locale.conf
            
            LANG=en_US.UTF-8
            
            passwd root
            
            useradd -m -G wheel -s /bin/bash <user>
            passwd <user>
            EDITOR=vim visudo
            
            # Uncomment
            %wheel ALL=(ALL:ALL) ALL
            
            # AMD CPU
            pacman -S amd-ucode
            # AMD GPU
            sudo pacman -S mesa lib32-mesa vulkan-radeon lib32-vulkan-radeon
            # Intel CPU
            pacman -S intel-ucode
            # NVIDIA GPU
            sudo pacman -Syu linux-headers
            sudo pacman -S nvidia nvidia-utils nvidia-settings nvidia-dkms
            sudo mkinitcpio -P
            sudo modprobe nvidia
            
            pacman -S grub efibootmgr os-prober
            grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ARCH
            vim /etc/default/grub
            
            GRUB_CMDLINE_LINUX_DEFAULT="loglevel=5 nowatchdog"
            
            grub-mkconfig -o /boot/grub/grub.cfg
            
            exit
            umount -R /mnt
            shutdown -h now
            sudo systemctl enable --now NetworkManager
            

            6

            lsblk -o name,mountpoint,size,uuid
            # Get UUID of Swap Partition
            sudo vim /etc/default/grub
            
            GRUB_CMDLINE_LINUX_DEFAULT="loglevel=5 nowatchdog resume=UUID=<swap_uuid>"
            
            sudo grub-mkconfig -o /boot/grub/grub.cfg
            sudo vim /etc/mkinitcpio.conf
            
            HOOKS=(base udev resume ...)
            
            sudo mkinitcpio -P
            sudo reboot
            

            Personal do

            sudo pacman -Rns \
            	xfce4-dict \
            	xfce4-terminal \
            	xfce4-screenshooter \
            	xfce4-clipman-plugin \
            	ristretto
            	# xfce4-notifyd \
            	# xfwm4 \
            

            reference

            cross-reference

            mark

            1. archwsl.md
            2. pacman.md
            3. yay.md
            4. flatpak.md
            5. openssh.md
            6. tigervnc.md
            7. firewalld.md
            8. pipewire.md
            9. bluez.md
            10. mount.md

            extra

            cache

            troubleshoot

            Bluetooth service was skipped because of an unmet condition check …

            7

            sudo modprobe bluetooth
            sudo systemctl restart bluetooth
            systemctl status bluetooth
            

            annex

            arch-linux-arm_ucon arch-linux


            1. archlinux 基础安装

            2. Set the hostname

            3. System time

            4. Localization

            5. Localization/Simplified Chinese

            6. 可选配置(进阶篇)- 休眠(hibernate)设置

            7. Bluetooth not working on computer

            Domain name resolution

            install

            1

            sudo vim /etc/hosts
            
            # For example
            <ip>	github.com
            <ip>	raw.githubusercontent.com
            

            usage

            sudo systemctl restart systemd-resolved
            

            1. hosts

            Install fonts

            mkdir -p ~/.local/share/fonts
            # mkdir -p ~/.local/share/fonts/ttf
            mv <font_file> ~/.local/share/fonts/
            # fc-cache -fv
            

            Users and groups

            command

            # Add user
            sudo useradd -m <user>
            sudo passwd <user>
            
            # Add group
            sudo addgroup sudousers
            # Add user into group
            sudo usermod -aG sudousers <user>
            # Remove user from group
            sudo gpasswd -d <user> <group>
            

            AppImage

            usage

            • Thunar → <app>.AppImage → Properties → Permissions → Allow this file to run as a program.
            • Or chmod +x <app>.AppImage.
            cd ~/.local/share/applications
            vim <app>.desktop
            
            [Desktop Entry]
            Type=Application
            Name=<The APP>
            Comment=<comment>
            Icon=<absolute_path_to>/icon.png
            Exec=<absolute_path_to>/<app>.AppImage --appimage-portable-config
            Terminal=false
            Categories=<categorie_1>;<categorie_1>
            Path=
            StartupNotify=false
            

            Launch <app>.desktop → Mark As Secure And Launch.


              ArchWSL

              install

              # scoop install archwsl
              wsl --install archlinux
              arch
              

              useradd

              passwd
              echo "%wheel ALL=(ALL) ALL" > /etc/sudoers.d/wheel
              useradd -m -G wheel -s /bin/bash <user>
              passwd <user>
              exit
              
              arch config --default-user <user>
              arch
              

              Personal do

              sudo pacman -Syyu \
              	inetutils \
              	less \
              	unzip \
              	wget \
              	xsel
              # editorconfig-checker \
              
              yay -S --noconfirm \
              	fuzzy-pkg-finder \
              	paru
              

              WSL Optionals

              1

              D-Bus

              # sudo pacman -S dbus
              sudo mkdir /run/dbus -p
              sudo dbus-daemon --system
              

              systemd/systemctl

              vim /etc/wsl.conf
              
              [boot]
              systemd=true
              

              reference

              cross-reference

              1. arch-linux.md
              2. wsl.md
              3. pacman.md
              4. yay.md
              5. openssh.md
              6. tigervnc.md

              annex

              archwsl_01 archwsl_02


              1. Known issues

              RaspArch

              sudo -s
              passwd
              
              sudo nano /etc/sudoers.d/wheel
              
              %wheel ALL=(ALL) ALL
              
              sudo useradd -m -G wheel -s /bin/bash <user>
              sudo passwd <user>
              su <user>
              
              sudo nano /etc/pacman.conf
              
              DisableSandbox
              
              [archlinuxcn]
              Server = https://repo.archlinuxcn.org/$arch
              
              sudo cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
              sudo vim /etc/pacman.d/mirrorlist
              
              # Add on top
              Server = https://mirrors.ustc.edu.cn/archlinuxarm/$repo/os/$arch
              
              wget http://mirror.archlinuxarm.org/aarch64/core/libssh2-1.11.1-1-aarch64.pkg.tar.xz
              mkdir libssh2
              tar -xvf libssh2-1.11.1-1-x86_64.pkg.tar.zst -C libssh2
              cd libssh2/usr/lib
              sudo cp libssh2.so.1.0.1 /usr/lib
              sudo pacman -R firefox gimp
              sudo pacman -Syyu
              

              yay

              1 2

              # Not recommended
              sudo pacman -S --needed git base-devel
              git clone https://aur.archlinux.org/yay-git.git
              cd yay-git
              makepkg -si
              
              # No aarch64 version to fix pacman
              git clone https://github.com/chaitanyarahalkar/Pacman-Static
              cd Pacman-Static
              makepkg -si
              ./pacman-static -Syyu
              

              troubleshoot


              1. [SOLVED] pacman 7 - landlock is not supported by the kernel!

              2. Arch Linux ARM

              XDG Base Directory

              reference

              Xorg

              Xinit

              vim .xinitrc
              
              session=${1:-xfce}
              
              case $session in
              	xfce|xfce4        ) exec startxfce4;;
              	i3|i3wm           ) exec i3;;
              	*                 ) exec $1;;
              sac
              
              startx ~/.xinitrc <xfce/i3/*>
              

              xprofile

              sudo pacman -S xorg-xev
              xev
              # Get your keyboard key's keycode
              

              reference

              Windows 10

              boot

              1. 现在安装 → 我没有产品密钥 → Windows 10 专业版 → 自定义:仅安装Windows(高级) → 选择目标驱动器 → 格式化 → 新建
              2. 我没有Internet连接
              3. 继续执行有线设置
              4. 使用脱机账户 → 不填写密码
              5. 运行 → control userpasswords2 → 属性 → 要使用本计算机,用户必须输入用户名和密码(Off)

              System environment

              Get Windows default environments

              SET
              
              # BaseDirs
              ALLUSERSPROFILE=C:\ProgramData
              APPDATA=C:\Users\User\AppData\Roaming
              CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
              CommonProgramFiles=C:\Program Files\Common Files
              DriverData=C:\Windows\System32\Drivers\DriverData
              HOMEDRIVE=C:
              HOMEPATH=\Users\User
              LOCALAPPDATA=C:\Users\User\AppData\Local
              ProgramData=C:\ProgramData
              ProgramFiles(x86)=C:\Program Files (x86)
              ProgramFiles=C:\Program Files
              PUBLIC=C:\Users\Public
              SystemDrive=C:
              SystemRoot=C:\Windows
              TEMP=%SystemRoot%\TEMP # TEMP=C:\Users\User\AppData\Local\Temp
              TMP=%SystemRoot%\TEMP # TMP=C:\Users\User\AppData\Local\Temp
              USERNAME=User
              USERPROFILE=C:\Users\User
              windir=%SystemRoot%
              
              # Other
              ComSpec=C:\Windows\system32\cmd.exe
              FPS_BROWSER_APP_PROFILE_STRING=Internet Explorer
              FPS_BROWSER_USER_PROFILE_STRING=Default
              PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
              
              # PATH
              Path=C:\Windows;C:\Windows\system32;C:\Windows\System32\OpenSSH;C:\Windows\system32\wbem;C:\Windows\System32\WindowsPowerShell\v1.0
              

              Add into System Environment

              USER=<user_path>
              SCOOP_GLOBAL=<user_path>\Usr\Scoop
              

              Add into top of System PATH

              C:\Users\User\Usr\Git\Shell\_windows\Patch;
              

              Add into User Environment

              EDITOR=nvim
              # Lib
              CARGO_HOME=C:\Users\User\.cargo
              CARGO_TARGET_DIR=C:\Users\User\.cargo\tmp
              GOPATH=C:\Users\User\.go
              GOROOT=C:\Users\User\Scoop\apps\go122\current
              # GOROOT=C:\Users\User\Usr\Lib\go1.20.1
              JAVA_HOME=C:\Users\User\Scoop\apps\openjdk22\current
              LUA_PATH=C:\Users\User\Usr\Lib\lua-5.4.6;C:\Users\User\AppData\Roaming\luarocks\share\lua\5.4\?.lua;C:\Users\User\AppData\Roaming\luarocks\share\lua\5.4\?\init.lua
              LUA_CPATH=C:\Users\User\Usr\Lib\lua-5.4.6\src;C:\Users\User\AppData\Roaming\luarocks\lib\lua\5.4\?.dll
              PIPX_HOME=C:\Users\User\.pipx
              PNPM_HOME=C:\Users\User\.pnpm
              # Bin
              LIBCLANG_PATH=C:\Users\User\Scoop\apps\llvm\current\bin
              LLVM_LIB_DIR=C:\Users\User\Scoop\apps\llvm\current\lib
              SCOOP=C:\Users\User\Scoop
              # LUA_DEV=C:\Users\User\apps\lua-for-windows\current
              NVM_HOME=C:\Users\User\Scoop\apps\nvm\current
              NVM_SYMLINK=C:\Users\User\Scoop\persist\nvm\nodejs\nodejs
              # Opt
              MAGICK_CODER_MODULE_PATH=C:\Users\User\Scoop\apps\imagemagick\current\modules\coders
              MAGICK_HOME=C:\Users\User\Scoop\apps\imagemagick\current
              OLLAMA_HOST=0.0.0.0
              OLLAMA_ORIGINS=*
              TESSDATA_PREFIX=C:\Users\User\Scoop\apps\tesseract-languages\current
              # Other
              DOTFILES_DIR=C:\Users\User\Usr\Git\dotfiles
              PEGASUS_HOME=C:\Users\User\Scoop\apps\pegasus\current
              

              Add into User PATH (ignore the scoop add)

              C:\Program Files\BraveSoftware\Brave-Browser\Application;
              C:\Program Files\Ethea\SVGShellExtensions;
              C:\Program Files\GPSoftware\Directory Opus;
              C:\Program Files\LinkShellExtension\32;
              C:\Program Files\Sublime Text;
              C:\Users\User\.cargo\bin;
              C:\Users\User\.cargo\tmp\release\deps;
              C:\Users\User\.go\bin;
              C:\Users\User\.local\bin;
              C:\Users\User\.pipx\bin;
              C:\Users\User\.pnpm;
              C:\Users\User\.pyenv\pyenv-win\bin;
              C:\Users\User\.pyenv\pyenv-win\shims;
              C:\Users\User\.rustup\toolchains\stable-x86_64-pc-windows-msvc\bin;
              C:\Users\User\AppData\Local\Yarn\bin;
              C:\Users\User\AppData\Roaming\luarocks\bin;
              C:\Users\User\Scoop\apps\sioyek\current;
              C:\Users\User\Usr\Git\Shell\_windows;
              C:\Users\User\Usr\Git\Shell\_windows\AutoHotkey;
              C:\Users\User\Usr\Git\Shell\_windows\Keypirinha;
              C:\Users\User\Usr\Git\Shell\_windows\Other;
              C:\Users\User\Usr\Git\Shell\_windows\SendTo;
              C:\Users\User\Usr\Git\Shell\_windows\Startup;
              C:\Users\User\Usr\Git\Shell\optWeb;
              C:\Users\User\Usr\Lib\lua-5.4.6;
              C:\Users\User\Usr\Lib\lua-5.4.6\bin;
              C:\Users\User\Usr\Lib\rbenv\rbenv\bin;
              C:\Users\User\Usr\Lib\rbenv\shims;
              C:\Users\User\Usr\Opt\cmder_mini;
              C:\Users\User\Usr\Opt\Espanso;
              C:\Users\User\Usr\Opt\WezTerm;
              C:\Users\User\Usr\Srv\Kiwix-Server;
              # C:\Program Files (x86)\Aspell-0.60\bin;
              # C:\Users\User\Scoop\apps\gridplayer\current;
              # C:\Users\User\Scoop\apps\video-compare\current;
              # C:\Users\User\Scoop\apps\yarn\current\bin;
              # C:\Users\User\Scoop\apps\yarn\current\global\node_modules\.bin;
              

              command

              config (Cache)

              • Win+Q
                • 搜索权限和历史记录 → (All Off)
                • Windows Search设置 → 高级搜索索引器设置 → 经典 → 在此自定义搜索位置 → 修改 → 包含的位置/用户 Off → 确定
              • 鼠标
                • 鼠标设置 → 其他鼠标选项 → 指针 → Grey Tango
                • 自定义 → 文本选择 → 浏览 → cursor_white/Text.cur → 应用
              • SMB
                • 启用或关闭Windows功能 → SMB1.0/CIFS文件共享支持(On) → SMB直通(On)
                • 网络和共享中心 → 高级共享设置 → 专用 → 启用网络发现(On) → 启用网络连接设备的自动设置(On) → 启用文件和打印机共享(On)
                • 计算机管理 → 本地用户和组 → 用户 → 右键 → 新用户 → 用户名() → 用户不能更改密码(On) → 密码永不过期(On) → 新建
                • 文件夹 → 右键 → 属性 → 共享 → 共享 → 选择要与其共享的用户 … 权限级别(读取/写入) → 共享 → 完成
              • 查询本机IP
                • CMD → ipconfig | findstr /i "ipv4"
                • 网络状态 → 更改适配器选项 → 以太网 → 属性 → Internet协议版本4 → IPv4
              • 添加网络位置
                • 此电脑 → 右键 → 添加一个网络位置 → 下一页 → 选择自定义网络位置 → 查看示例 … 用户名() → 下一步 … 保存密码(On) → 登录 → 完成
              • 新建防火墙规则
                • 管理Windows防火墙规则 → 创建新规则 → 新增空白规则 … 此程序 → 浏览名称 → 方向 → 出站
              • 资源管理器
                • 查看 → 选项 → 常规 → 打开文件资源管理器时打开(此电脑) → 在“快速访问“中显示常用文件夹(Off)
                • … 查看 → 显示隐藏的文件、文件夹和驱动器 (On) → 隐藏已知文件类型的扩展名 (Off)
              • 自动播放CD或其他媒体
                • 可移动驱动器 → 不执行操作
              • 关闭Windows键热键
                • 编辑组策略 → 用户配置 → 管理模板 → Windows组件 → 文件资源管理器 → 关闭Windows键热键 → 右键 → 编辑 → 已启用 → 确定
              • 键盘
                • Windows
                  • 编辑语言和键盘选项
                    • 拼写、键入和键盘设置 → 全部关闭
                    • 添加语言 → 英语(美国)
                    • 添加语言 → 中文(简体,中国)/选项 → 微软拼音 → 删除
                  • 高级键盘设置
                    • 语言栏选项 → 语言栏/语言栏 隐藏 → (可选)高级键设置
                      • 在输入语言之间 → 更改按键顺序 → (无)
                      • 切换到英语(美国) - 美式键盘 → 更改按键顺序 → (无)
                      • 切换到中国(简体,中国) - 小狼毫 → 更改按键顺序 → Ctrl+Shift+1
                      • 中文(简体)输入法 - 输入法/非输入发切换 → Ctrl+Shift+F12
                    • 替代默认输入法 → 英语(美国) - 美式键盘 → 允许我为每个应用窗口使用不同的输入法 Off
                • KBLAutoSwith → 设置
                  • 基础设置1 → 输入法切换设置
                    • 自动切换 → 禁止
                    • 默认输入法 → 英文
                  • 基础设置2 → 特殊热键 → 右Shift → 切换中英文输入法
                • Rime
                  • 迁移: 复制用户资料夹到新目录 → 小狼毫 安装选项 → 新目录 → 小狼毫 重新部署 → 小狼毫算法服务
                  • 小狼毫安装选项 → 用户文件夹 → 使用默认默认位置 → 修改文件夹
                  • 小狼毫重新部署
                    • 小狼毫输入法设定 → 检查配置
                  • 崩溃时运行小狼毫算法服务
              • 声音
                • 声音 → 声音控制面板 → 声音 → 声音方案 → 无声
              • Game bar
                • 游戏 → Game Bar (Off) → 允许控制器打开Game Bar (Off)
              • 更改DNS服务器
                • 查看网络连接 → 以太网 → 属性 → 网络 → Internet协议版本4 → 属性 → 自动获得DNS服务器地址
                • 命令提示符 → ipconfig /flushdns
              • 打印机
                • 属性 → 共享 → 共享这台打印机 (On) → 在客户端计算机上呈现打印作业 (On)

              reference

              cross-reference

              mark

              cache

              troubleshoot

              resource

              cache

              ReviOS

              reference

              1. Windows 10 版本信息
              2. List of system changes
              3. Installing Windows
              4. Applying Playbook
              5. Post-Install Guide

              annex

              revios

              WSL

              install

              1 2 3

              Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
              DISM /Online /Enable-Feature /All /FeatureName:Microsoft-Hyper-V
              
              wsl --set-default-version 2
              wsl --update --web-download
              wsl --list --online
              wsl --install <distro>
              

              optional

              Remove Windows 10’s PATH

              4 5

              sudo vim /etc/wsl.config
              
              [interop]
              appendWindowsPath = false
              

              WSLg

              Turn on6:

              ln -s /mnt/wslg/runtime-dir/wayland-0* /run/user/1000/
              

              Turn off7:

              subl %UserProfile%\.wslconfig
              
              [wsl2]
              guiApplications=false
              

              cross-reference


              1. Install Hyper-V

              2. How to install Arch Linux for WSL

              3. WSL –update fails with unknown error code (0x80240066)

              4. How to remove the Win10’s PATH from WSL

              5. [Question] How to remove Windows pathes from WSL PATH?

              6. GUI Applications will no longer launch in Wayland after updating

              7. Disable WSLg permanently

              srv

              cross-reference

              mark

              later

              extra

              cache

              resource

              mark

              later

              extra

              cache

              cancel

              ActivityWatch

              resource

              cache

              Anki Sync Server

              install

              1

              # Ubuntu 22 ARM
              uv venv .anki-sync-server
              source .anki-sync-server/bin/activate
              uv pip install anki
              sudo vim /etc/systemd/system/anki-sync-server.service
              
              [Unit]
              Description=Anki Sync Server
              After=network.target
              
              [Service]
              Environment="SYNC_USER1=<user>:<password>"
              Environment="SYNC_USER1=SYNC_HOST=0.0.0.0"
              Environment="SYNC_USER1=SYNC_PORT=8060"
              WorkingDirectory=/path/to/.anki-sync-server
              ExecStart=/path/to/.anki-sync-server/bin/python -m anki.syncserver
              Restart=always
              
              [Install]
              WantedBy=multi-user.target
              

              usage

              sudo systemctl enable --now anki-sync-server
              

              cross-reference


              1. Sync Server - Anki Manual

              audiobookshelf

              install

              1

              mkdir audiobookshelf
              cd audiobookshelf
              vim docker-compose.yml
              # Copy from https://github.com/advplyr/audiobookshelf/blob/master/docker-compose.yml
              
                  volumes:
                  	# Add media dirs on mount disk
                    - /mnt/<mount_name>/audiobookshelf:/audiobooks
                    - /mnt/<mount_name>/podcast:/podcasts
              
              sudo docker compose up -d
              

              reference

              annex

              audiobookshelf


              1. Docker Compose

              beaverhabits

              install

              mkdir beaverhabits
              cd beaverhabits
              vim docker-compose.yml
              # Copy from https://github.com/daya0576/beaverhabits?tab=readme-ov-file#self-hosting
              

              usage

              sudo docker compose up -d
              

              Beaver Habit Tracker → More → Add.

              Black Candy

              install

              1

              mkdir blackcandy
              cd blackcandy
              vim docker-compose.yml
              
              services:
                blackcandy:
                  image: ghcr.io/blackcandy-org/blackcandy:latest
                  ports:
                    - "3000:3000"
                  volumes:
                    - <music_dir>:/media_data
                  environment:
                    MEDIA_PATH: /media_data
                  deploy:
                    restart_policy:
                      condition: any
              
              1. Visit http://<your_host>:3000.
              2. User → Settings → Library → Sync.

              annex

              blackcandy


              1. Media Files Mounts

              Bukubrow

              install

              1

              pipx install "buku[server]"
              bukuserver run --host 127.0.0.1 --port 5001
              
              git clone --depth=1 https://github.com/samhh/bukubrow-host
              cd bukubrow-host
              cargo build --release
              ./target/release/bukubrow --install-chrome
              

              1. Bukuserver

              Cal.com

              reference

              Calibre-Web

              install

              # Ubuntu 22 ARM
              uv venv calibre-web-venv
              source calibre-web-venv/bin/activate
              uv pip install calibreweb
              

              Install optional features, for example:

              vim calibre-web-venv/requirements.txt
              
              # metadata extraction
              rarfile>=3.2,<5.0
              scholarly>=1.2.0,<1.8
              markdown2>=2.0.0,<2.5.0
              html2text>=2020.1.16,<2024.2.26
              python-dateutil>=2.1,<2.10.0
              beautifulsoup4>=4.0.1,<4.13.0
              faust-cchardet>=2.1.18,<2.1.20
              py7zr>=0.15.0,<0.21.0
              mutagen>=1.40.0,<1.50.0
              pycountry>=20.0.0,<25.0.0
              
              cps
              
              sudo vim /lib/systemd/system/calibre-web.service
              
              [Unit]
              Description=Calibre-Web
              After=network.target
              
              [Service]
              ExecStart=/home/scillidan/calibre-web-venv/bin/cps
              WorkingDirectory=/home/scillidan/calibre-web-venv
              Restart=on-abnormal
              
              [Install]
              WantedBy=multi-user.target
              

              usage

              sudo systemctl enable --now calibre-web
              
              1. Visit http://<your_host>:8083.
              2. Login with admin, admin123.
              3. Calibre → Add books → There’s Calibre Library\ here now.
              4. Calibre-Web → Admin → Edit Cabibre Database Configuration → Select folder contains the metadata.db.

              reference

              resource

              annex

              calibre-web

              CasaOS

              install

              wget -qO- https://get.casaos.io | sudo bash
              sudo ufw allow 80
              # sudo casaos-uninstall
              

              annex

              casaos

              code-server

              reference

              Coder

              install

              Ubuntu 22 ARM

              1

              Get code-server-*-linux-arm64.tar.gz from releases.

              tar -xzvf code-server-*-linux-arm64.tar.gz
              sudo cp -r code-server-*-linux-amd64 /usr/lib/code-server
              sudo ln -s /usr/lib/code-server/bin/code-server /usr/bin/code-server
              sudo mkdir /var/lib/code-server
              sudo vim /lib/systemd/system/code-server.service
              
              [Unit]
              Description=code-server
              After=nginx.service
              
              [Service]
              Type=simple
              Environment=PASSWORD=<password>
              ExecStart=/usr/bin/code-server --bind-addr 0.0.0.0:8010 --user-data-dir /var/lib/code-server --auth password
              Restart=always
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl enable --now code-server
              

              config

              2

              1. Settings → Profile → <target_profile> → More → Export → <profile_name> → Local file.
              2. Settings → Profile (Default) → Import Profile.

              1. How To Set Up the code-server Cloud IDE Platform on Ubuntu 22.04

              2. Setup Guide

              Dashy

              reference

              Datasette

              Datasette is a tool for exploring and publishing data. It helps people take data of any shape, analyze and explore it, and publish it as an interactive website and accompanying API.
              Datasette is aimed at data journalists, museum curators, archivists, local governments, scientists, researchers and anyone else who has data that they wish to share with the world. It is part of a wider ecosystem of 44 tools and 154 plugins dedicated to making working with structured data as productive as possible. [datasette.io]

              Datasette是一个用于探索和发布数据的工具。它帮助人们处理任何形状的数据,进行分析和探索,并将其发布为互动网站及配套的API。
              Datasette旨在服务于数据记者、博物馆策展人、档案管理员、地方政府、科学家、研究人员以及希望与全球分享数据的其他人。它是一个更广泛的生态系统的一部分,包括44个工具和154个插件,致力于使处理结构化数据的工作尽可能高效。 [datasette.io]

              Data processing

              pipx install sqlite-utils
              sqlite-utils insert database.db table table.csv --csv
              sqlite-utils drop-table database.db table
              sqlite-utils enable-fts database.db table column_1 column_2
              # sqlite-utils insert-files resource.db latex media/*.jpg
              

              Selfhost

              1

              mkdir <dir>
              cd <dir>
              uv venv
              .venv\Scripts\activate.bat
              uv pip install datasette
              uv pip install datasette-sitemap datasette-block-robots datasette-backup datasette-search-all datasette-external-links-new-tabs datasette-copyable datasette-publish-vercel
              # datasette install datasette-render-images datasette-multiline-links datasette-render-markdown datasette-media
              # datasette install git+https://github.com/next-LI/datasette-csv-importer.git
              # uv pip install datasette-parquet 
              datasette serve database.db
              datasette serve database_1.db database_2.db -m metadata.yml
              

              Deploy to Vercel

              2

              Create .github/workflows/vercel.yml

              name: Deploy to Vercel
              on:
                push:
                  branches: [ "main" ]
                pull_request:
                  branches: [ "main" ]
                workflow_dispatch:
              
              jobs:
                build:
                  runs-on: ubuntu-latest
                  steps:
                    - name: Checkout
                      uses: actions/checkout@v4
                    - name: Set up Node.js
                      uses: actions/setup-node@v4
                      with:
                        node-version: '18.x'
                    - name: Install Vercel CLI
                      run: npm i -g vercel
                    - name: Set up Python
                      uses: actions/setup-python@v4
                      with:
                        python-version: '3.9'
                    - name: Install dependencies
                      run: pip install datasette datasette-sitemap datasette-block-robots datasette-backup datasette-search-all datasette-ripgrep datasette-render-images datasette-media datasette-render-markdown datasette-multiline-links datasette-external-links-new-tabs datasette-copyable datasette-publish-vercel
                    - name: Deploy Datasette using Vercel
                      env:
                        VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
                      run: |-
                        datasette publish vercel database_1.db database_2.db \
                          --metadata metadata.yml \
                          --token $VERCEL_TOKEN \
                          --project database
              

              Vercel → Project database → Settings → Build and Deployment → Node.js Version → 18.x.

              reference

              resource

              mark

              extra

              cache


              1. Metadata

              2. datasette-publish-vercel

              DeepLX

              install

              Ubuntu 22 ARM

              Get deeplx_linux_arm64 from Releases.

              chmod +x deeplx_linux_arm64
              mv deeplx_linux_arm64 /usr/bin/deeplx
              sudo mkdir -p /opt/deeplx
              sudo vim /etc/systemd/system/deeplx.service
              
              [Unit]
              Description=DeepLX Service
              After=network.target
              
              [Service]
              ExecStart=/usr/bin/deeplx
              WorkingDirectory=/opt/deeplx
              Restart=on-abnormal
              
              [Install]
              WantedBy=multi-user.target
              

              usage

              sudo systemctl enable --now deeplx.service
              

              reference

              dictd

              install

              Ubuntu 22 ARM

              1

              sudo apt install dictd
              sudo vim /etc/dictd/dictd.conf
              
              global {
                  listen_to 0.0.0.0
                  port 2628
              }
              
              access {
                allow *
              }
              
              include /var/lib/dictd/db.list
              
              #LASTLINE
              
              sudo vim /var/lib/dictd/db.list
              
              # For example
              database ecdict {
              	data <path_to>/dictd/ecdict.dict.dz
              	index <path_to>/dictd/ecdict.index
              }
              ...
              
              sudo systemctl enable --now dictd.service
              systemctl status dictd.service
              

              Arch

              sudo pacman -S dictd
              yay -S --noconfirm dictd-wn
              
              sudo vim /etc/dict/dictd.conf
              
              global {
                  listen_to localhost
                  port 2628
              }
              
              access {
                allow *
              }
              
              # For example
              database wn {
              	data /usr/share/dictd/wn.dict.dz
              	index /usr/share/dictd/wn.index
              }
              
              database ecdict {
              	data /usr/share/dictd/ecdict.dict.dz
              	index /usr/share/dictd/ecdict.index
              }
              
              database gcide {
              	data /usr/share/dictd/gcide.dict.dz
              	index /usr/share/dictd/gcide.index
              }
              
              
              # database dict-en-en {
              # 	data /usr/share/dictd/dict-en-en.dict.dz
              # 	index /usr/share/dictd/dict-en-en.index
              # }
              # database wikdict-en-zh {
              # 	data /usr/share/dictd/wikdict-en-zh.dict.dz
              # 	index /usr/share/dictd/wikdict-en-zh.index
              # }
              
              #LASTLINE
              
              sudo vim /etc/dict/dict.conf
              
              server localhost
              # server dict.org
              
              sudo systemctl enable --now dictd.service
              

              usage

              dict --host localhost --port 2528 -I -v
              dict -h localhost -p 2528 -d <database> <word>
              

              reference

              cross-reference

              cache

              resource

              cache


              1. dictd.conf

              dir2opds

              install

              # Ubuntu 22 ARM
              mkdir dir2opds
              cd dir2opds
              wget https://github.com/dubyte/dir2opds/releases/download/v*/dir2opds_*_linux_arm64.tar.gz
              tar xvf dir2opds_*_linux_arm64.tar.gz
              sudo vim /etc/systemd/system/dir2opds.service
              
              [Unit]
              Description=dir2opds
              Documentation=https://github.com/dubyte/dir2opds
              After=network-online.target
              
              [Service]
              Restart=on-failure
              ExecStart=/home/<user>/dir2opds/dir2opds -dir /mnt/nvme/audioebook -port 8080
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl enable --now dir2opds.service
              

              Docker

              install

              Ubuntu 22/24 ARM

              1

              for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
              sudo apt-get update
              sudo apt-get install ca-certificates wget
              sudo install -m 0755 -d /etc/apt/keyrings
              sudo wget -O /etc/apt/keyrings/docker.asc https://download.docker.com/linux/ubuntu/gpg
              sudo chmod a+r /etc/apt/keyrings/docker.asc
              echo \
              	"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
              	$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
              	sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
              sudo apt-get update
              sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
              

              Arch

              sudo pacman -S docker docker-compose
              sudo systemctl enable --now docker.service
              

              Use repository mirror

              2 3

              sudo mkdir -p /etc/docker
              sudo vim /etc/docker/daemon.json
              
              # Add <docker_status_monitor> site to your bookmark. If failed, you can visit the web page and modify them
              {
              	"dns": ["8.8.8.8", "8.8.4.4"],
              	"registry-mirrors": [
              		"https://docker.1ms.run",
              		"https://docker.1panel.live",
              		"https://docker.ketches.cn"
              	]
              }
              
              # Optional
              	"experimental": true,
              	"default-runtime": "nvidia",
              	"runtimes": {
              		"nvidia": {
              			"path": "/usr/bin/nvidia-container-runtime",
              			"runtimeArgs": []
              		}
              	}
              
              sudo mkdir -p /etc/containers/registries.conf.d
              sudo vim /etc/containers/registries.conf.d/docker.conf
              
              unqualified-search-registries = ["docker.io"]
              
              [[registry]]
              location = "docker.io"
              
              [[registry.mirror]]
              location = "https://docker.1panel.live"
              
              sudo systemctl daemon-reload
              sudo systemctl restart docker
              

              usage

              4 5

              # Do a test
              sudo docker run -p 8080:80 --rm nginx
              # sudo ufw allow 8080
              # Visit http://<docker_host>/8080
              
              # Do a text for NVIDIA Container Toolkit
              sudo docker run --gpus all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark
              

              command

              # Update
              sudo docker compose down
              sudo docker compose pull
              sudo docker compose up -d
              
              # Prune all unused Docker images
              sudo docker image prune -a -f
              
              # Prune unused Docker containers
              sudo docker container prune -f
              
              # Prune unused Docker volumes
              sudo docker volume prune -f
              
              # Prune unused Docker networks
              sudo docker network prune -f
              
              # Prune the entire Docker system, including images, containers, volumes, and networks
              sudo docker system prune -a --volumes -f
              

              reference


              1. Install Docker Engine on Ubuntu

              2. Docker / Podman 安装与换源

              3. Using the NVIDIA Container Runtime for Docker

              4. Docker Hub - Quickstart

              5. Container Runtime Initialization Errors

              Dokploy

              install

              curl -sSL https://dokploy.com/install.sh | sh
              

              File Browser

              install

              1

              mkdir filebrowser-docker
              cd filebrowser-docker
              vim docker-compose.yml
              # Copy from https://docs.techdox.nz/filebrowser/#docker-compose-file-docker-composeyml
              sudo docker compose up -d
              

              1. Setting Up Filebrowser with Docker Compose

              font-files

              reference

              Github pages

              Usage example

              1. When deploy QR code designer with Github Pages.
              2. kochrt/qr-designer → Fork → Unselect Copy the main branch only.
              3. Fork → Settings → Pages → Build and development.
                1. Source → Deploy from a branch.
                2. Branch → gh-pages, /(root).
              4. Visit https://<user>.github.io/qr-designer.

              Gitea

              install

              1

              Get gitea-*-linux-arm64 from dl.gitea.com.

              # Ubuntu 24 ARM
              gpg --keyserver keys.openpgp.org --recv 7C9E68152594688862D62AF62D9AE806EC1592E2
              gpg --verify gitea-*-linux-amd64.asc gitea-*-linux-amd64
              mv gitea-*-linux-arm64 gitea
              sudo chmod +x gitea
              sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git
              sudo mkdir -p /var/lib/gitea/{custom,data,log}
              sudo chown -R git:git /var/lib/gitea/
              sudo chmod -R 750 /var/lib/gitea/
              sudo mkdir /etc/gitea
              sudo chown root:git /etc/gitea
              sudo chmod 770 /etc/gitea
              sudo cp gitea /usr/local/bin/gitea
              sudo vim /etc/systemd/system/gitea.service
              
              [Unit]
              Description=Gitea
              After=network.target
              
              [Service]
              User=git
              Group=git
              WorkingDirectory=/var/lib/gitea/
              Environment=GITEA_WORK_DIR=/var/lib/gitea/
              ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
              Restart=always
              RestartSec=10
              
              [Install]
              WantedBy=multi-user.target
              

              usage

              sudo systemctl start --now gitea.service
              sudo chmod 750 /etc/gitea
              sudo chmod 640 /etc/gitea/app.ini
              

              1. Installation from binary

              GitHub Actions Runner

              reference

              asset

              mark

              extra

              cache

              headscale

              install

              1 2

              Get headscale_*_linux_arm64 from Headscale - Releases.

              # Ubuntu 24 ARM
              sudo mv headscale_<version>_linux_arm64 headscale
              sudo chmod +x headscale
              mv headscale /usr/local/bin/
              sudo useradd --create-home --home-dir --system --user-group --shell /usr/sbin/nologin headscale
              sudo mkdir -p /etc/headscale
              sudo wget https://headscale.net/stable/packaging/headscale.systemd.service -O /etc/systemd/system/headscale.service
              sudo vim /etc/headscale/config.yaml
              
              unix_socket: /var/run/headscale/headscale.sock
              
              sudo systemctl daemon-reload
              sudo systemctl enable --now headscale
              systemctl status headscale
              

              cross-reference


              1. Using standalone binaries (advanced)

              2. How To Install Headscale on Ubuntu 24.04|22.04|20.04

              immich

              install

              1

              mkdir immich-app
              cd immich-app
              wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
              wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
              sudo docker compose up -d
              

              annex

              immich


              1. Docker Compose [Recommended]

              indexing

              Jackett

              install

              # Arch
              sudo pacman -S jackett
              
              # Windows 10
              scoop install jackett
              

              Ubuntu ARM

              1

              sudo apt install mono-devel
              

              Get Jackett.Binaries.LinuxARM64.tar.gz from Releases.

              tar -xvzf Jackett.Binaries.LinuxARM64.tar.gz
              cd Jackett
              ./jackett_launcher.sh
              # Exit
              
              sudo ./install_service_systemd.sh
              sudo systemctl status jackett.service
              

              Termux

              2

              proot-distro login archlinux
              pacman -S mono
              wget https://github.com/Jackett/Jackett/releases/download/<the_version>/Jackett.Binaries.Mono.tar.gz
              tar -xvzf Jackett.Binaries.Mono.tar.gz
              cd Jackett
              mono --debug JackettConsole.exe
              

              config

              • Jackett → Configured Indexers → Add Indexer
                • Torrents.csv (Add)
                • Knaben (Add)
                • TheRARBG (Add)

              reference

              cross-reference

              resource

              extra


              1. How to Install Jackett on Ubuntu 20.04

              2. [Package]: Jackett

              Jellyfin

              install

              1

              # Ubuntu 22 ARM
              sudo dpkg -i jellyfin-server_10.9.11+ubu2204_arm64.deb jellyfin-web_10.9.11+ubu2204_all.deb
              sudo dpkg -i jellyfin-ffmpeg6_6.0.1-8-jammy_arm64.deb
              sudo systemctl enable --now jellyfin
              systemctl status jellyfin
              

              reference

              resource

              cache


              1. Installation - Linux

              Jupyter

              reference

              Kiwix Server

              1. Download binaries.
              2. Decompress the archiver to Kiwix-Server/.
              3. Add Kiwix-Server/ into PATH.

              usage

              # Deliver ZIM file articles on LAN
              kiwix-serve --address 0.0.0.0 --port 5173 <zim>
              
              # Deliver ZIM files articles on LAN
              kiwix-manage <path_to>/kiwix/library.xml add <zim>
              kiwix-serve --library <path_to>/kiwix/library.xml --address 0.0.0.0 --port 5173
              

              FastKokoro

              install

              1

              git clone --depth=1 https://github.com/remsky/Kokoro-FastAPI
              cd Kokoro-FastAPI
              

              Windows 10

              scoop install espeak-ng
              
              uv venv
              .venv\Scripts\activate.bat
              set PHONEMIZER_ESPEAK_LIBRARY="C:\Users\User\Scoop\apps\espeak-ng\current\eSpeak NG\libespeak-ng.dll"
              set PYTHONUTF8=1
              set PROJECT_ROOT=%cd%
              set USE_GPU=true
              set USE_ONNX=false
              set PYTHONPATH=%PROJECT_ROOT%;%PROJECT_ROOT%\api
              set MODEL_DIR=src\models
              set VOICES_DIR=src\voices\v1_0
              set WEB_PLAYER_PATH=%PROJECT_ROOT%\web
              uv pip install torch==2.6.0 --index-url https://download.pytorch.org/whl/cu124
              uv pip install -e ".[gpu]"
              

              Ubuntu 24 ARM

              sudo apt install ffmpeg espeak-ng
              
              uv venv
              source .venv/Scripts/activate
              export PYTHONUTF8=1
              export PROJECT_ROOT=%cd%
              export USE_GPU=false
              export USE_ONNX=false
              export PYTHONPATH=%PROJECT_ROOT%;%PROJECT_ROOT%/api
              export MODEL_DIR=src/models
              export VOICES_DIR=src/voices/v1_0
              export WEB_PLAYER_PATH=%PROJECT_ROOT%/web
              uv pip install -e .
              
              uv run --no-sync python docker/scripts/download_model.py --output api/src/models/v1_0
              uv run --no-sync uvicorn api.src.main:app --host 0.0.0.0 --port 8880
              

              annex

              kokoro-fastapi


              1. start-gpu.ps1

              Komga

              install

              Ubuntu 22 ARM

              Docker

              mkdir komga
              cd komga
              vim docker-compose.yml
              
              # Copy from https://komga.org/docs/installation/docker#docker-compose
              services:
              	komga:
              		image: gotson/komga:latest
              		container_name: komga
              		ports:
              			- 25600:25600
              		volumes:
              			- ./config/:/config
              			# Add manga dir on mount disk
              			- /mnt/<mount_name>/<path_to_manga>:/manga
              		restart: unless-stopped
              
              # rm -rf .config
              sudo docker compose up -d
              
              1. Visit http://<your_host>:25600.
              2. Register and login.
              3. Komga → Add/edit Library → Root folder → /manga.

              Jar

              1 2 3

              sudo apt install openjdk-21-jdk postgresql postgresql-contrib -y
              sudo su postgres
              createuser komgauser --pwprompt
              createdb -O komgauser komga
              exit
              
              sudo mkdir /opt/komga
              sudo wget https://github.com/gotson/komga/releases/download/<the_version>/komga-<the_version>.jar -P /opt/komga/
              sudo vim /etc/systemd/system/komga.service
              
              [Unit]
              Description=Komga Service
              After=network.target
              
              [Service]
              ExecStart=/usr/bin/java -Xms128M -Xmx256M -jar /opt/komga/komga-<the_version>.jar --server.servlet.context-path=/komga --server.port=8090
              WorkingDirectory=/opt/komga
              Restart=on-abnormal
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl daemon-reload
              sudo systemctl enable --now komga
              

              Arch

              sudo useradd -m komga
              sudo passwd komga
              sudo usermod -aG mountusers komga
              sudo vim /etc/systemd/system/komga.service
              
              [Unit]
              Description=komga service
              After=network-network.target
              
              [Service]
              User=komga
              ExecStart=/usr/bin/komga
              Type=exec
              Restart=on-failure
              
              [Install]
              WantedBy=multi-user.target
              
              sudo firewall-cmd --zone=home --add-port=25600/tcp --permanent
              sudo firewall-cmd --reload
              sudo systemctl daemon-reload
              sudo systemctl enable --now komga.service
              

              Windows 10

              java -jar "komga.jar" --komga.config-dir="config"
              

              reference

              cross-reference


              1. Run with Docker | Komga

              2. How to Install Komga on Ubuntu Server Latest

              3. Komga - Breaking changes

              LanguageTool

              LanguageTool is an advanced AI-based writing assistant and text editor designed to improve writing quality. It goes beyond simple spelling and grammar checking by offering features like:

              • Detection and correction of grammar, spelling, and punctuation errors
              • Style improvements, including suggestions to avoid overused or redundant words
              • Support for more than 20 languages
              • Fixing formatting inconsistencies such as times, numbers, and currency
              • Personalized features like a personal dictionary and style guide
              • Integration with various platforms and applications, including web browsers, Microsoft Word, Google Docs, LibreOffice, and more
              • An online editor and browser extensions to check text while typing on the web
              • Advanced AI and open-source technology behind it
              • Premium options with enhanced error detection, unlimited rephrasing, and team collaboration features
                It is available as free and premium versions, with the core being open-source and downloadable for offline use. LanguageTool is designed to help users write precisely, clearly, and stylishly across different types of texts and languages.
                In short, LanguageTool is a comprehensive grammar, style, and spell checker that acts as a powerful writing assistant to make your writing error-free and polished. [perplexity.ai]

              LanguageTool是一款先进的基于AI的写作助手和文本编辑器,旨在提高写作质量。它超越了简单的拼写和语法检查,提供以下功能:

              • 检测和修正语法、拼写和标点错误
              • 风格改进,包括避免使用过多或冗余词汇的建议
              • 支持超过20种语言
              • 修复时间、数字和货币等格式不一致
              • 个性化功能,如个人词典和风格指南
              • 与各种平台和应用的集成,包括网络浏览器、Microsoft Word、Google Docs、LibreOffice等
              • 在线编辑器和浏览器扩展,在线输入时进行文本检查
              • 背后的先进AI技术和开源技术
              • 付费选项包括增强的错误检测、无限重写和团队协作功能
                它有免费的和付费的版本,核心功能为开源,可离线下载使用。LanguageTool旨在帮助用户在不同类型的文本和语言中写作精准、清晰和风格优雅。
                简而言之,LanguageTool是一个全面的语法、风格和拼写检查工具,作为强大的写作助手,帮助您使写作无误且精练。 [perplexity.ai]

              install

              Ubuntu 22 ARM

              1 2 3

              Decompress ngrams-en-*.zip to /mnt/<disk>/share/ngrams/.

              sudo apt install openjdk-21-jdk
              sudo unzip LanguageTool-stable.zip
              sudo mv LanguageTool-* /opt/languagetool
              
              sudo apt install make g++
              git clone --depth=1 https://github.com/facebookresearch/fastText
              cd fastText
              make
              sudo vim /opt/languagetool/server.properties
              
              fasttextModel=fasttext/lid.176.bin
              fasttextBinary=fasttext/fasttext
              
              sudo vim /etc/systemd/system/languagetool.service
              
              [Unit]
              Description=LanguageTool Service
              After=network.target
              
              [Service]
              ExecStart=java -cp /opt/languagetool/languagetool-server.jar org.languagetool.server.HTTPServer --languagemodel /mnt/<nvme>/share/ngrams --port 8040 --allow-origin --public
              WorkingDirectory=/opt/languagetool
              Restart=on-abnormal
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl enable --now languagetool.service
              
              1. Get ngrams-en-*.zip from here.
              2. Get LanguageTool Desktop version for offline use from LanguageTool embedded HTTP Server.

              Windows 10

              1. Install OpenJDK,I tested it on openjdk17.
              2. Decompress ngrams-en-*.zip to ngrams/.
              3. Decompress LanguageTool-stable.zip to LanguageTool/.
              unzip LanguageTool-stable.zip
              java.exe -cp LanguageTool\languagetool-server.jar org.languagetool.server.HTTPServer --languagemodel <ngrams_dir> --port <port> --allow-origin
              

              For running it liked service, create languagetool_service.cmd from the command above. Then create languagetool_service.vbs:

              Set WshShell = CreateObject("WScript.Shell")
              	WshShell.Run chr(34) & "languagetool_service.cmd" & Chr(34), 0
              Set WshShell = Nothing
              

              Create shortcut of languagetool_service.vbs, put it into C:\Users\User\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\.

              Browser Extension

              1. Install Browser Extension.
              2. Browser Extension → Settings → Advanced settings → Other server → http://<your_host>:<port>/v2.
              3. General settings → Show in right-click menu (On).

              annex


              1. LanguageTool embedded HTTP Server

              2. Anyone self-hosting languagetool?

              3. Finding errors using n-gram data

              LibreTranslate

              install

              From source

              git clone --depth=1 https://github.com/LibreTranslate/LibreTranslate
              cd LibreTranslate
              uv venv .venv --python 3.10
              source .venv/bin/activate
              uv pip install -e .
              # libretranslate --load-only en,zh
              libretranslate
              # Exit
              sudo cp -r ~/.local/share/argos-translate/packages /root/.local/share/argos-translate/
              
              sudo vim /etc/systemd/system/libretranslate.service
              
              [Unit]
              Description=libretranslate
              After=syslog.target network.target
              
              [Service]
              WorkingDirectory=/home/<user>/<path_to>/libretranslate
              ExecStart=/home/<user>/<path_to>/libretranslate/.venv/bin/python main.py --host 0.0.0.0
              Restart=always
              RestartSec=120
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl enable --now libretranslate
              # You may have to wait a few minutes until you can visit in browser.
              

              Docker compose

              1

              git clone --depth=1 https://github.com/LibreTranslate/LibreTranslate
              cd LibreTranslate
              mv docker-compose.yml docker-compose.yml.bak
              vim docker-compose.yml
              
              services:
                libretranslate:
                  container_name: libretranslate
                  build:
                    context: .
                    dockerfile: ./docker/Dockerfile
                  restart: unless-stopped
                  ports:
                    - "5000:5000"
                  healthcheck:
                    test: ['CMD-SHELL', './venv/bin/python scripts/healthcheck.py']
                  environment:
                    LT_HOST: 0.0.0.0
                    LT_UPDATE_MODELS: 'true'
                    LT_LOAD_ONLY: en,zh
                  volumes:
                    - libretranslate_api_keys:/app/db
                    # Keep the models in a docker volume, to avoid re-downloading on startup
                    - /mnt/<mount_name>/share/libretranslate_models:/home/libretranslate/.local:rw
              
              volumes:
                libretranslate_api_keys:
                libretranslate_models:
              
              sudo docker compose up -d
              

              annex


              1. Where are the language models saved?

              LinguaCafe

              install

              1

              mkdir linguacafe
              cd linguacafe
              wget https://raw.githubusercontent.com/simjanos-dev/LinguaCafe/refs/heads/main/docker-compose.yml
              mkdir storage
              sudo docker compose up -d
              
              1. Visit http://<your_host>:9191.
              2. Create admin user, then login.
              3. Admin settings → Languages → <your_lang> → Install.

              reference

              annex

              linguacafe


              1. Updating to the latest version

              linkding

              install

              1 2

              git clone --depth=1 https://github.com/sissbruecker/linkding
              cd linkding
              nvm install 18.*
              nvm use 18.*
              npm install
              npm run build
              
              uv venv
              .venv\Scripts\activate.bat
              uv python -m pip install -r requirements.txt
              uv python -m pip install -r requirements.prod.txt
              uv pip install -r requirements.txt
              python manage.py migrate
              python manage.py createsuperuser --username=<user> --email=<email>
              

              usage

              cd linkding
              npm run dev
              
              # In a new terminal session
              python manage.py runserver 8002
              

              Visit http://localhost:8002 to try it.

              Deploy with PM2

              3

              # Ubuntu 22 ARM
              npm install -g concurrently
              cp requirements.dev.txt requirements.dev.txt.bak
              vim requirements.dev.txt
              
              rcssmin
              
              vim package.json
              
              {
                "scripts": {
                  "start": "concurrently \"rollup -c -w\" \"python manage.py runserver 0.0.0.0:8060\""
              
              pm2 start npm --name "linkding" -- run start
              pm2 save
              

              config

              On Windows 10, how to autorun at startup?

              1. Create start_linkding.bat:
                @echo off
                setlocal
                
                cd linkding
                set LD_SUPERUSER_NAME=<user>
                set LD_SUPERUSER_PASSWORD=<password>
                start npm run dev
                timeout 5
                start .venv\Scripts\python.exe manage.py runserver 8002
                
                endlocal
                pause
                
              2. Create start_linkding.vbs:
                Set WshShell = CreateObject("WScript.Shell")
                  WshShell.Run chr(34) & "<path_to>\start_linkding.cmd" & Chr(34), 0
                Set WshShell = Nothing
                
              3. Create shortcut of start_linkding.vbs.
              4. Put the shortcut into C:\Users\User\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\.

              command

              linkding --url "http://<your_host>:8002" --token "<token>" bookmarks all -q $1 ^
                | jq ".results[]" ^
                | ramda -c -o csv ^
                | xsv select tag_names,url,website_title ^
                | tidy-viewer -u 45
              

              resource

              extra

              cache

              annex

              linkding


              1. Development

              2. linkding - Setup

              3. ModuleNotFoundError: No module named ‘ruamel’

              LM Studio

              usage

              • Discover → Select the LLM → Choose a download option → Check Full GPU Offload Possible → Download.
              • Chat → Select a model to load → Select the LLM.
              • Developer → Enable CORS (On) → Serve on Local Network (on) → Select a model to load → Start Server.

              troubleshoot

              1

              1. Install LM Studio.
              2. Go to C:\Users\User\AppData\Local\LM-Studio\app-*\resources\app\.webpack\main.
              3. Find in folder, replace huggingface.co to hf-mirror.com.

              1. LM Studio有魔法加持依然无法连网的解决办法

              Lute v3

              install

              Docker compose

              1

              mkdie lute
              cd lute
              vim docker-compose.yml
              # Copy from https://luteorg.github.io/lute-manual/install/windows/windows-using-docker.html#3-create-docker-composeyml
              
              sudo docker compose up -d
              

              setting

              • Lute → Settings
                • Languages → English → Dictionaries → Add
                  • SilverDict
                    Terms
                    Embedded
                    http://<your_host>:2628/api/query/<en_group>/[LUTE]
                    (Enable)
                    
                  • LibreTranslate
                    Sentences
                    Pop-up window
                    http://<your_host>:5000/?source=en&target=zh-Hans&q=[LUTE]
                    (Enable)
                    

              usage

              • Lute → Books
                • Import web page
                  1. Import URL → https://www.gutenberg.org/cache/epub/11/pg11-images.html
                  2. Language → English
                  3. Save

              reference


              1. Windows using Docker - Lute manual

              Mathesar

              install

              mkdir mathesar
              cd mathesar
              wget https://github.com/mathesar-foundation/mathesar/raw/0.2.0/docker-compose.yml
              echo $(cat /dev/urandom | LC_CTYPE=C tr -dc 'a-zA-Z0-9' | head -c 50)
              vim .env
              
              SECRET_KEY=<secret_key>
              

              Miniflux

              install

              Ubuntu 22 ARM

              1 2 3 4

              cd /etc/apt/sources.list.d
              sudo touch miniflux.list
              echo "deb [trusted=yes] https://repo.miniflux.app/apt/ * *" | sudo tee /etc/apt/sources.list.d/miniflux.list > /dev/null
              sudo apt update
              sudo apt install miniflux
              sudo apt install postgresql-common
              sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh
              sudo apt install postgresql-16
              sudo -u postgres psql
              
              CREATE USER miniflux WITH ENCRYPTED PASSWORD 'miniflux';
              CREATE DATABASE miniflux;
              GRANT ALL PRIVILEGES ON DATABASE miniflux TO miniflux;
              ALTER USER miniflux WITH SUPERUSER;
              \q
              
              sudo vim /etc/miniflux.conf
              
              RUN_MIGRATIONS=1
              DATABASE_URL=user=miniflux password=miniflux dbname=miniflux sslmode=disable
              LISTEN_ADDR=/run/miniflux/miniflux.sock
              PORT=8070
              
              miniflux -c /etc/miniflux.conf -migrate
              miniflux -c /etc/miniflux.conf -create-admin
              # sudo systemctl start postgresql
              miniflux -c /etc/miniflux.conf
              
              sudo systemctl enable --now miniflux
              sudo systemctl enable --now postgresql
              

              Windows 10

              1. Get miniflux-windows-amd64 from releases, rename it to miniflux.exe.
              2. PostgreSQL (test on v14).

              Create database5:

              initdb --locale=C --username=miniflux --pgdata=miniflux
              postgres -D miniflux
              # Keep this terminial window
              

              Configrate database6:

              1. Find and run pgAdmin4.exe.
              2. Servers → Context-menu → Register → Server → Tab General:
                Name: miniflux_server
                
              3. Tab Connection:
                host name: localhost
                Maintenance database: miniflux
                Username: miniflux
                
              4. Servers → miniflux_server → Context-menu of Databases → Create → Database → Tab General:
                Database: miniflux
                
              5. Tab Definition:
                Encoding: None
                

              Create miniflux.conf7:

              DATABASE_URL=user=miniflux password=secret dbname=miniflux sslmode=disable
              RUN_MIGRATIONS=1
              POLLING_FREQUENCY=60
              CREATE_ADMIN=1
              ADMIN_USERNAME=<admin_username>
              ADMIN_PASSWORD=<admin_password>
              DEBUG=on
              WORKER_POOL_SIZE=10
              PORT=8070
              
              # In a new terminal session
              miniflux -config-file miniflux.conf
              

              usage

              # Backup data
              pg_dump -U miniflux -h 127.0.0.1 -p 5432 -F t miniflux > miniflux.tar
              
              # Clear postgresql
              sudo systemctl stop postgresql
              sudo systemctl disable postgresql
              pg_lsclusters
              sudo systemctl stop postgresql@16-main
              sudo pg_dropcluster 16 main --stop
              sudo apt-get remove --purge postgresql-16
              

              config

              On Windows 10, how to autorun at startup?

              1. Create start_miniflux.bat.
                rem Maybe need administrator permissions. I forgot.
                @echo off
                
                start postgres.exe -D miniflux_db
                timeout 5
                start miniflux.exe -config-file miniflux.conf
                
                pause
                
              2. I don’t want to use Windows Task Scheduler. I don’t try NSSM. So create start_miniflux.vbs:
                Set WshShell = CreateObject("WScript.Shell")
                  WshShell.Run chr(34) & "<path_to>\start_service.bat" & Chr(34), 0
                Set WshShell = Nothing
                
              3. Create shortcut of start_miniflux.vbs.
              4. Put the shortcut into C:\Users\User\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\.

              reference

              resource

              mark

              annex

              miniflux


              1. Debian Installation

              2. How do I solve this problem to use psql? | psql: error: FATAL: role “postgres” does not exist

              3. How To Completely Uninstall PostgreSQL

              4. Linux downloads (Ubuntu)

              5. initdb

              6. Server Dialog

              7. Configuration Parameters

              n8n

              Build with the precision of code or the speed of drag-n-drop. Host with on-prem control or in-the-cloud convenience. n8n gives you more freedom to implement multi-step AI agents and integrate apps than any other tool. [n8n.io]

              通过代码的精确性或拖放的速度进行构建。可以选择本地控制或云端便捷进行托管。n8n比其他任何工具都提供更多自由,以实现多步骤的AI代理和应用程序集成。 [n8n.io]

              install

              1

              mkdir n8n
              cd n8n
              vim docker-compose.yml
              # Copy from https://docs.n8n.io/hosting/installation/server-setups/docker-compose/#5-create-docker-compose-file
              
              services:
                traefik:
                  command:
                    # If serve port is already used, edit liked
                    - "--entrypoints.web.address=:8070"
                    - "--entrypoints.websecure.address=:453"
                  ports:
                    - "8070:8070"
                    - "453:453"
                n8n:
                  images: n8nio/n8n
                  ports:
                    - "0.0.0.0:5678:5678"
                  environment:
                    - N8N_SECURE_COOKIE=false
              
              sudo docker volume create n8n_data
              sudo docker volume create traefik_data
              sudo docker compose up -d
              

              resource

              later

              cache

              annex

              n8n_01 n8n_02


              1. Server setups - Docker-Compose

              Netdata

              install

              1

              # Ubuntu 22 ARM
              sudo apt install netdata -y
              sudo vim /etc/netdata/netdata.conf
              
              [global]
                run as user = netdata
                web files owner = root
                web files group = root
                # Netdata is not designed to be exposed to potentially hostile
                # networks. See https://github.com/netdata/netdata/issues/164
                bind socket to IP = 0.0.0.0
              
              sudo systemctl enable --now netdata
              

              1. How to Install Netdata on Ubuntu 22.04

              nginx

              annex

              nginx

              NocoDB

              install

              1

              bash <(curl -sSL http://install.nocodb.com/noco.sh) <(mktemp)
              # Enter your host as ip address and domain name
              

              Service Management Menu → Start Service

              annex

              nocodb


              1. Self Hosting - Auto-Upstall

              ntfy.sh

              install

              1

              # Ubuntu 24 ARM
              sudo mkdir -p /etc/apt/keyrings
              curl -fsSL https://archive.heckel.io/apt/pubkey.txt | sudo gpg --dearmor -o /etc/apt/keyrings/archive.heckel.io.gpg
              sudo apt install apt-transport-https
              sudo sh -c "echo 'deb [arch=arm64 signed-by=/etc/apt/keyrings/archive.heckel.io.gpg] https://archive.heckel.io/apt debian main' \
                  > /etc/apt/sources.list.d/archive.heckel.io.list"
              sudo apt update
              sudo apt install ntfy
              sudo systemctl enable --now ntfy
              

              1. Installing ntfy - Debian/Ubuntu repository

              Overleaf

              reference

              Paperless-ngx

              install

              1 2

              mkdir -v ~/paperless-ngx
              wget https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/refs/heads/main/docker/compose/docker-compose.postgres.yml -O docker-compose.yml
              

              Add volumes as additional storage liked:

              vim docker-compose.yml
              
                  volumes:
                    - /mnt/nvme/paper:/usr/src/paperless/consume
              
              wget https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/refs/heads/main/docker/compose/docker-compose.env
              vim docker-compose.env
              
              PAPERLESS_OCR_LANGUAGES=chi-sim chi-sim-vert chi-tra chi-tra-vert
              PAPERLESS_SECRET_KEY=<secret_key>
              
              docker compose pull
              sudo docker compose run --rm webserver createsuperuser
              sudo docker compose up -d
              

              reference

              annex

              paperless-ngx


              1. Docker using the Installation Script

              2. Paperless-ngx - Bare Metal Route

              Penpot

              install

              mkdir penpot
              wget https://raw.githubusercontent.com/penpot/penpot/main/docker/images/docker-compose.yaml
              sudo docker compose up -d
              

              annex

              penpot

              Plex

              install

              1

              # Ubuntu 22 ARM
              echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list
              curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -
              sudo apt update
              sudo apt install plexmediaserver
              sudo systemctl status plexmediaserver
              

              Visit http://<your_host>:32400/web.

              reference

              resource

              cache


              1. Install of plex on Ubuntu server 22.04

              postgresql

              install

              1

              # Ubuntu ARM
              sudo apt install postgresql
              sudo systemctl enable --now postgresql
              sudo systemctl status postgresql
              sudo vim /etc/postgresql/17/main/postgresql.conf
              
              listen_addresses = '0.0.0.0'
              
              sudo systemctl restart postgresql
              sudo su postgres
              

              1. Install and configure PostgreSQL

              qbittorrent-nox-static

              Ubuntu 22 ARM

              install

              sudo adduser qbittorrent
              su qbittorrent
              
              mkdir -p ~/bin && source ~/.profile
              wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/aarch64-qbittorrent-nox
              chmod 700 ~/bin/qbittorrent-nox
              ~/bin/qbittorrent-nox
              
              1. The default account and password is displayed in terminal.
              2. Visit <your_host>:8080 and login.
              3. qBittorrent WebUI → Settings
                • WebUI
                  • Authentication → Change Username, Password.
                  • (Optional) Web User Interface → Change IP address to 0.0.0.0, change port to 8090.
                  • (Optional) Bypass authentication for clients on localhost (On).
                  • (Optional) Bypass authentication for clients in whilelisted IP subnets → …
                • Speed → Global Rate Limits → For example, you can set a lower speed here, liked 100 KiB/s upload and 10000 KiB/s download.
                • Connection → Connections Limits → Set lesser number here.
                • Advanced → Customize application instance name Steam.
              su <sudo_user>
              sudo vim /etc/systemd/system/qbittorrent.service
              
              [Unit]
              Description=qBittorrent-nox service
              Documentation=man:qbittorrent-nox(1)
              Wants=network-online.target
              After=network-online.target nss-lookup.target
              
              [Service]
              Type=exec
              User=qbittorrent
              ExecStart=/home/qbittorrent/bin/qbittorrent-nox
              Restart=on-failure
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl enable --now qbittorrent
              systemctl status qbittorrent
              

              Download to mounted disk

              sudo mkdir /mnt/<mount_name>/qbittorrent
              sudo groupadd mountusers
              sudo usermod -aG mountusers qbittorrent
              ## Get the uid
              id -u $USER
              ## Get the gid
              getent group mountusers
              sudo cp /etc/fstab /etc/fstab.bak
              sudo vim /etc/fstab
              
              # Add on bottom. I used NTFS disk here.
              UUID=<disk_uuid> /mnt/<mount_name> ntfs-3g default,uid=<uid>,gid=<gid>,umask=0000, 0 0
              
              # sudo systemctl deamon-reload
              # sudo mount -a
              sudo reboot
              

              qBittorrent WebUI → Settings → Downloads → Saving Management → Default Save Path → /mnt/<mount_name>/qbittorrent.。

              Share downloaded files via Samba

              sudo vim /etc/samba/smb.conf
              
              [qbittorrent]
              comment = qbittorrent
              path = /mnt/<mount_name>/share/qbittorrent
              guest ok = no
              read only = no
              browsable = yes
              writeable = yes
              force user = qbittorrent
              
              sudo systemctl restart smbd
              

              reference

              cross-reference

              rime-ls

              install

              # Build on Windows 10
              git clone --depth=1 https://github.com/wlh320/rime-ls
              cd rime-ls
              git fetch --tags
              git checkout v0.4.1
              set "LIBRIME_LIB_DIR=%USERPROFILE%\Usr\Lib\rime\dist\lib"
              set "LIBRIME_INCLUDE_DIR=%USERPROFILE%\Usr\Lib\rime\dist\include"
              set "LIB=%USERPROFILE%\Usr\Lib\rime\dist\lib"
              cargo build --release
              

              Termux (Cache)

              # Windows 10
              cargo install --force cargo-ndk
              rustup target add aarch64-linux-android
              # rustup target add armv7-linux-androideabi x86_64-linux-android i686-linux-android
              cargo ndk -t aarch64-linux-android build --release
              
              ln ~/.cargo/tmp/release/rime_ls ~/.local/bin/rime_ls
              

              cross-reference

              SakuraLLM

              SFT And RLHF models using Knowledge of Universal Character and Relationship Attributes for Japanese to Chinese Translation in Light Novel & Galgame Domain. [SakuraLLM/SakuraLLM]

              SFT和RLHF模型利用通用角色和关系属性的知识进行轻小说和美少女游戏领域的日译中翻译。 [SakuraLLM/SakuraLLM]

              install

              git clone --depth=1 https://github.com/SakuraLLM/SakuraLLM
              cd SakuraLLM
              uv pip install torch torchvision torchaudio xformers --index-url https://download.pytorch.org/whl/cu121
              uv pip install -r requirements.llamacpp.txt
              uv pip install llama-cpp-python --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/cu121
              
              1. Here, I download q2k of Sakura-14B-Qwen2beta-v0.9.2-GGUF.
              2. Put the files into models/.

              usage

              1 2

              # As API
              python server.py --trust_remote_code --model_name_or_path models/sakura-13b-lnovel-v0.9b-Q2_K.gguf --model_version 0.9 --no-auth --llama_cpp --use_gpu --log debug
              
              # As CLI
              # txt
              python translate_novel.py --trust_remote_code --model_name_or_path models/sakura-13b-lnovel-v0.9b-Q2_K.gguf --model_version 0.9 --no-auth --llama_cpp --use_gpu --log debug --text_length 512 --data_path <novel.txt> --output_path <novel_translated.txt>
              # epub
              python translate_epub.py --trust_remote_code --model_name_or_path models/sakura-13b-lnovel-v0.9b-Q2_K.gguf --model_version 0.9 --no-auth --llama_cpp --use_gpu --log debug --text_length 512 --data_path <novel.epub> --output_folder <novel_epub>
              

              annex


              1. Sakura模型部署教程-本地运行-Transformers模型

              2. 各种推理引擎的使用说明

              Samba

              install

              1 2

              Ubuntu 22 ARM

              sudo apt install samba
              
              sudo useradd -m smbuser
              sudo smbpasswd -a smbuser
              sudo groupadd -r smbusers
              sudo usermod -aG smbusers smbuser
              sudo chown smbuser:smbusers <path_to>/<share_name>
              sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
              sudo vim /etc/samba/smb.conf
              
              workgroup = <SMBGPNAME>
              # interfaces = <wired_interfaces> <wireless_interfaces>
              
              [<share_name>]
              comment = Share Name
              path = <path_to>/<share_name>
              guest ok = no
              read only = no
              browsable = yes
              writable = yes
              create mask = 0644
              directory mask = 2755
              # force create mode = 0664
              # force directory mode = 2775
              # force group = smbusers
              
              sudo systemctl restart smbd
              

              Arch

              sudo pacman -S samba
              sudo vim /etc/samba/smb.conf
              # https://git.samba.org/samba.git/?p=samba.git;a=blob_plain;f=examples/smb.conf.default;hb=HEAD
              sudo smbpasswd -a smbuser
              
              sudo systemctl start smb nmb
              sudo systemctl enable smb nmb
              

              client

              Windows 10

              1. Windows 10 → 计算机管理 → 本地用户和组 → 用户 → 右键 → 新用户:
                • 用户名 → smbuser
                • 用户不能更改密码 (On)
                • 密码永不过期 (On)
              2. 本地用户和组 → 组 → 右键 → 新建组 → 组名 SMBGPNAME → 添加 → 输入对象名称来选择 smbuser → 确认 → 创建.
              3. 资源管理器 → 此电脑 → 右键 → 添加一个网络位置 → 指定网站的位置 → \\<your_host>\<path_to_share> → 请键入该网络位置的名称 <any_name>.
              4. 网络位置 → \\<your_host>\<path_to_share> → 右键 → 映射网络驱动器 → 登录时重新连接 On → 完成.

              crose-reference


              1. Installing and Configuring Samba on Ubuntu 22

              2. Implementing Samba on Arch Linux: A Comprehensive Guide

              SilverDict

              install

              From source

              # Ubuntu 22 ARM
              git clone --depth=1 https://github.com/Crissium/SilverDict
              cd SilverDict/client
              yarn install
              yarn build
              mv build ../server/
              cd ..
              uv venv --python 3.11
              source .venv/bin/activate
              uv pip install -r server/requirements.txt
              python server/server.py 0.0.0.0
              # pm2 start server.py --name silverdict --interpreter "<path_to>/SilverDict/.venv/Scripts/python.exe" --cwd "<path_to>/SilverDict/server" 
              
              sudo vim /etc/systemd/system/silverdict.service
              
              [Unit]
              Description=SilverDict
              After=syslog.target network.target
              
              [Service]
              WorkingDirectory=/home/<user>/<path_to>/SilverDict
              ExecStart=/home/<user>/<path_to>/SilverDict/.venv/bin/python server/server.py 0.0.0.0
              Restart=always
              RestartSec=120
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl enable --now silverdict
              

              Docker compose

              mkdir silverdict
              cd silverdict
              vim docker-compose.yml
              
              services:
                silverdict:
                  image: mathdodger/silverdict:latest
                  container_name: silverdict
                  ports:
                    - "2628:2628"
                  volumes:
                    - .silverdict:/root/.silverdict
                    - /<path_to_dictionaries>:/dictionary
              
              sudo docker compose up -d
              

              usage

              • SilverDict → More → Library
                • Sources
                  1. Add → <path_to>/<stardict_dir>.
                  2. Refresh.
                  3. Go tab Dictionarys, check import results.
                  4. More → Query → Search , check results.
                • Dictionaries
                  • For example, add:
                    Name: HanYuDaCiDian
                    Filename: <path_to>/<dict>.ifo
                    Type: StarDict (.ifo)
                    
                  1. Do nothing before importing finished.
                • Groups
                  1. Add
                    Group name: zh
                    Group language(s): zh
                    
                  2. Group zh → Edit dictionaries → `<dict_name> (On)
                  3. Default Group → Edit dictionaries → `<dict_name> (Off)

              Optional

              • SilverDict → More → Settings
                • Create n-gram index

              reference

              cross-reference

              annex

              silverdict

              Snapdrop

              annex

              snapdrop

              Sourcebot

              install

              1

              mkdir sourcebot
              cd sourcebot
              vim docker-compose.yml
              
              services:
                sourcebot:
                  image: ghcr.io/sourcebot-dev/sourcebot:latest
                  ports:
                    - "3100:3100"
                  restart: unless-stopped
              
              sudo docker compose up -d
              

              1. Getting Started

              Storyteller

              reference

              Suwayomi-Server

              install

              Ubuntu 22 ARM

              1

              Get Suwayomi-Server-v*-debian-all.deb from Suwayomi-Server - Releases.

              sudo dpkg -i Suwayomi-Server-v*-debian-all.deb
              sudo apt --fix-broken install
              sudo vim /etc/systemd/system/suwayomi-server.service
              
              [Unit]
              Description=Suwayomi Server
              After=network.target
              
              [Service]
              ExecStart=suwayomi-server
              Restart=on-abnormal
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl enable --now suwayomi-server
              sudo systemctl status suwayomi-server
              

              Arch

              sudo pacman -S xorg-xhost
              sudo useradd -m suwayomi
              sudo passwd suwayomi
              sudo usermod -aG mountusers suwayomi
              su suwayomi
              
              1. Get release from Suwayomi-Server-preview.
              2. Extract to Suwayomi-Server/.
              su <root_user>
              sudo vim /etc/systemd/system/suwayomi.service
              
              [Unit]
              Description=Suwayomi Server
              After=network.target
              
              [Service]
              User=suwayomi
              Group=suwayomi
              Environment=DISPLAY=:0
              ExecStart=/usr/bin/java -jar <path_to>/Suwayomi-Server/bin/Suwayomi-Server.jar
              Restart=on-abnormal
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl daemon-reload
              sudo systemctl enable --now suwayomi
              sudo firewall-cmd --zone=home --add-port=4567/tcp --permanent
              sudo firewall-cmd --reload
              

              usage

              1. The service may take several minutes to start until you can see it.
              2. Visit http://<your_host>:4567.
              3. Settings
                • Brower
                  • Extension repositories → Add repository → https://raw.githubusercontent.com/ThePBone/tachiyomi-extensions-revived/repo/index.min.json → OK2.
                  • Local source location → /mnt/<disk>/manga.
                • Download → Download localtion → /mnt/<disk>/share/suwayomi.
                • Library → Automatically refresh metadata (On).
              4. Brower
                1. Extensions → Filter → <your_lang> → Select <plugin> → Install.
                2. Sources → Filter → <your_lang> (On).
              5. (Optional) Backup → Restore Backup.

              1. can you make it easier to install on ubuntu , and tutorial need to update

              2. Tachiyomi Extensions Revived

              syncthing

              Syncthing is a continuous file synchronization program. It synchronizes files between two or more computers. [syncthing/syncthing]

              Syncthing是一个持续的文件同步程序。它将在两个或多个计算机之间同步文件。 [syncthing/syncthing]

              install

              # Arch
              sudo pacman -S syncthing
              # Windows 10
              scoop install syncthing
              

              reference

              resource

              cache

              Tailscale

              install

              # Ubuntu 22 ARM
              curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null
              curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list
              sudo apt-get update
              sudo apt-get install tailscale
              sudo tailscale up
              
              # Windows 10
              scoop install tailscale
              
              # Arch
              sudo pacman -S tailscale
              sudo systemctl enable --now tailscaled
              sudo tailscale login
              

              reference

              cache

              Teable

              install

              1

              mkdir teable
              cd teable
              vim docker-compose.yml
              vim .env
              # Copy from https://help.teable.io/deployment/docker-compose#docker-compose
              sudo docker-compose pull
              

              usage

              sudo docker compose --env-file .env up -d
              

              troubleshoot

              annex

              ai-pdf-summary applicant-tracker bug-tracker employee-directory event-planning lightweight-crm remote-team-hub sales-crm template-management travel-agency-fliers user-feedback


              1. Docker Deployment - Teable

              TeXdoc online

              install

              1

              git clone --depth=1 https://gitlab.com/islandoftex/images/texdoc-online
              cd texdoc-online
              cp docker-compose.yml docker-compose.yml.bak
              vim docker-compose.yml
              # Copy from https://gitlab.com/islandoftex/images/texdoc-online/-/wikis/Deploying-your-instance-of-TeXdoc-online#running-from-source
              
              sudo docker compose up -d
              

              1. Deploying your instance of TeXdoc online · texdoc-online Wiki

              TriliumNext Notes

              install

              mkdir trilium-next
              cd trilium-next
              vim docker-compose.yml
              # Copy from https://github.com/TriliumNext/Notes/blob/develop/docker-compose.yml
              
              # Modify the following
                environment:
                  # - TRILIUM_DATA_DIR=/home/node/trilium-data
                	- NODE_TLS_REJECT_UNAUTHORIZED=0
                ports:
                	- '8070:8080'
                volumes:
                	- ~/.local/share/trilium-data:/home/node/trilium-data
              
              sudo docker compose up -d
              

              Sync with server

              [^1]

              1. Install TriliumNext Notes Desktop.
              2. TriliumNext Notes Desktop → Settings → Sync → Sync Configuration → Server instance address → http://<your_host>:8070.

              [1^]: Synchronization | Docs

              Trilium Notes

              install

              Ubuntu 24 ARM

              1 2

              Get trilium-linux-x64-server-*.tar.xz from Trilium - Releases.

              tar -xvf trilium-linux-x64-server-*.tar.xz
              sudo mv trilium-linux-x64-server /opt/trilium
              sudo vim /etc/systemd/system/trilium.service
              
              [Unit]
              Description=Trilium Daemon
              After=syslog.target network.target
              
              [Service]
              Type=simple
              ExecStart=/opt/trilium/trilium.sh
              WorkingDirectory=/opt/trilium/
              
              TimeoutStopSec=20
              Restart=always
              
              [Install]
              WantedBy=multi-user.target
              
              export TRILIUM_DATA_DIR=/home/<user>/.local/share/trilium
              sudo systemctl enable --now trilium
              

              1. Server installation · TriliumNext/Trilium Wiki

              2. Manual server installation · TriliumNext/Trilium Wiki

              ttyd

              install

              1

              # Ubuntu 22 ARM
              sudo apt-get update
              sudo apt-get install -y build-essential cmake git libjson-c-dev libwebsockets-dev
              git clone --depth=1 https://github.com/tsl0922/ttyd
              cd ttyd && mkdir build && cd build
              cmake ..
              make
              sudo make install
              
              sudo vim /etc/systemd/system/ttyd.service
              
              [Unit]
              Description=ttyd service
              After=network.target
              
              [Service]
              Type=simple
              User=<username>
              Group=<username>
              ExecStart=/usr/local/bin/ttyd --cwd /home/<user> --writable zsh
              Restart=on-failure
              
              [Install]
              WantedBy=multi-user.target
              
              sudo systemctl enable --now ttyd
              

              1. Example Usage · tsl0922/ttyd Wiki

              ttydBridge

              annex

              ttydbridge

              Twenty

              install

              1

              curl -o docker-compose.yml https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/docker-compose.yml
              curl -o .env https://raw.githubusercontent.com/twentyhq/twenty/refs/heads/main/packages/twenty-docker/.env.example
              openssl rand -base64 32
              vim .env
              
              APP_SECRET=<random_string>
              PGPASSWORD_SUPERUSER=<password>
              

              usage

              sudo docker compose --env-file .env up -d
              

              annex

              twenty


              1. Twenty - Docker Compose

              Vercel

              Usage example

              1. When deploy Calcutext with Vercel.
              2. The Project → Settings → General → Node.js Version → 16.x.
              3. Deployment → More → Redeploy.

              wakapi

              install

              Docker compose

              mkdir wakapi
              vim docker-compose.yml
              
              services:
              	wakapi:
              		image: n1try/wakapi
              		container_name: wakapi
              		ports:
              			- "3000:3000"
              		volumes:
              			- wakapi-data:/data
              		environment:
              			WAKAPI_PASSWORD_SALT: "${WAKAPI_PASSWORD_SALT}"
              
              volumes:
              	wakapi-data:
              
              vim .env
              
              WAKAPI_PASSWORD_SALT=<change_it>
              
              sudo docker compose --env-file .env up -d
              

              From source

              # Ubuntu 22 Arm
              git clone --depth=1 https://github.com/muety/wakapi
              cd wakapi
              vim docker-compose.yml
              # Base on https://github.com/muety/wakapi/blob/master/compose.yml
              
              	db:
              		volumes:
              			# Save data on mount disk
              			- /mnt/<mount_name>/local/share/wakapi-db-data:/var/lib/postgresql/data
              
              sudo mkdir -p /mnt/<mount_name>/local/share/wakapi-db-data
              vim .env
              
              WAKAPI_PASSWORD_SALT=<change_it>
              WAKAPI_DB_PASSWORD=<change_it>
              WAKAPI_MAIL_SMTP_PASS=<change_it>
              
              sudo docker compose up -d
              

              web-check

              Weblate

              install

              1

              # Ubuntu 22 ARM
              sudo apt install -y \
                 libxml2-dev libxslt-dev libfreetype6-dev libjpeg-dev libz-dev libyaml-dev \
                 libffi-dev libcairo-dev gir1.2-pango-1.0 libgirepository1.0-dev \
                 libacl1-dev libssl-dev libpq-dev libjpeg-dev build-essential \
                 python3-gdbm python3-dev python3-pip python3-virtualenv virtualenv git
              
              sudo apt install -y \
                 libldap2-dev libldap-common libsasl2-dev \
                 libxmlsec1-dev
              
              sudo apt install -y nginx uwsgi uwsgi-plugin-python3 redis-server postgresql postgresql-contrib exim4 gettext
              sudo apt-get install git-svn
              

              reference


              1. Installing on Debian and Ubuntu - Weblate 5.13 documentation

              yomichan-web-service

              install

              # ArchWSL
              sudo pacman -S memcached
              yay -S mongodb42-bin
              nvm install hydrogen
              
              git clone --depth=1 https://github.com/tetraset/yomichan-web-service
              cd yomichan-web-service
              npm install
              node yomichan.js
              

              Zasper

              install

              1

              # Ubuntu 22 ARM
              git clone --depth=1 https://github.com/zasper-io/zasper
              cd zasper/docker
              sudo docker compose build
              sudo docker compose up -d
              

              1. Dokcer

              ZeroTier One

              install

              1. Log-in ZeroTier.
              2. Create a Network.

              1

              # Ubuntu 22 ARM
              wget -qO- https://install.zerotier.com | sudo bash
              sudo systemctl enable --now zerotier-one.service
              systemctl status zerotier-one.service
              sudo zerotier-cli join <network_id>
              sudo zerotier-cli listnetworks
              

              1. Debian 11 with ufw firewall is blocking zerotier - General Discussion - ZeroTier Discussions

              PM2

              install

              Ubuntu 22 ARM

              1

              wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
              source .bashrc
              nvm install --lts
              nvm use --lts
              npm install -g pm2
              pm2 dump
              pm2 startup
              # pm2 unstartup
              
              # Restore from dump file after reboot
              pm2 resurrect
              

              config

              Windows 10

              set "PM2_HOME=C:\ProgramData\pm2\home"
              set "PM2_INSTALL_DIRECTORY=C:\ProgramData\npm\npm\node_modules\pm2"
              set "PM2_SERVICE_DIRECTORY=C:\ProgramData\pm2\service"
              

              Configuare Apache on Rocky Linux

              2 3

              pm2 start npm --name "<app_name>" --watch -- start
              

              Create a new VirtualHost configuration with subdomain names:

              sudo vim /etc/httpd/conf.d/sub.domain.com.conf
              
              <VirtualHost *:80>
                ServerName www.sub.domain.com
                ServerAlias sub.domain.com
              
                ErrorLog /var/log/httpd/sub.domain.com-error.log
                CustomLog /var/log/httpd/sub.domain.com-access.log combined
                ProxyPreserveHost On
                ProxyPass / http://localhost:3000/
                ProxyPassReverse / http://localhost:3000/
              </VirtualHost>
              

              reference

              cross-reference


              1. Persistent applications

              2. How to specify a port number for pm2

              3. How to change the port in nextjs?

              pm2-installer

              install

              As Administrator:

              git clone --depth=1 https://github.com/jessety/pm2-installer
              cd pm2-installer
              sudo npm run configure
              sudo npm run setup
              sudo pm2 save
              

              Windows 10 → Control Panel → Administrative Tools > Services → PM2 → Properties → Log On → local system account → Go back to first tab → Start1.


              1. State is now: Stopped