Bluefish

Bluefish
Logo
Aktuální verze2.2.16 (22. září 2024)
Operační systémLinux
Microsoft Windows
macOS
FreeBSD
OpenBSD
Solaris
Vyvíjeno vC
Typ softwarutextový editor, HTML editor, svobodný software a editor zdrojového kódu
LicenceGNU General Public License
Webbluefish.openoffice.nl
Některá data mohou pocházet z datové položky.

Bluefish je pokročilý editor zdrojového kódu s různými nástroji pro programování a tvorbu webových stránek. Umožňuje editovat zdrojový kód v programovacích jazycích C, JavaScript[1], Java, PHP[2], Python[3] i v značkovacích jazycích jako HTML, YAML a XML[4]. Jedná se o svobodný software zdarma dostupný na mnoha platformách, včetně Linuxu[5], macOS a Windows a lze ho používat prostřednictvím integrace s GNOME nebo jako samostatnou aplikaci. Bluefish byl navržen jako kompromis mezi jednoduchými textovými editory a plnohodnotným vývojovým prostředím. Bluefish je lehký, rychlý nástroj, jenžse je snadné naučit používat a poskytuje mnoho funkcí IDE. Bluefish byl jedním z prvních editorů zdrojového kódu na desktopu Linuxu.[zdroj?] Byl přeložen do 20 jazyků.[6] Zdrojový kód je dostupný pod GNU General Public License.[7]

Funkce

Bluefish není kompletní vývojové prostředí, ale je více než pokročilý textový editor. V porovnání s vývojovým prostředím postrádá Bluefish funkce jako integrovaný debugger. Je možno nejlépe jej popsat jako pokročilý textový editor s mnoha specifickými webovými funkcemi. Někteří jej označují jako vývojové prostředí, ale neobsahuje komponenty WYSIWYG pro návrh webu.

Funkce Bluefish zahrnují zvýraznění syntaxe a našeptávač pro 47 značkovacích a programovacích jazyků, což je dá přizpůsobit pomocí vlastní definice syntaxe v XML. Dále nabízí skládání kódu, automatické obnovení,[8] funkci nahrávání/stahování (na systémech, kde je k dispozici GVfs), kontrolu pravopisu,[9]prohlížeč znaků Unicode, podporu projektů,[10] navigaci v kódu a záložky.[11] Má některé pokročilé funkce vyhledávání a nahrazování[12] s podporou regulárních výrazů a podporu vyhledávání a nahrazování více souborů. Má rozhraní pro více dokumentů[13], které dokáže rychle načíst velké (stovky souborů) databáze kódu nebo webové stránky[14][15], a nabízí editaci přes celou obrazovku[16].

Pro tvorbu webových stránek má mnoho panelů nástrojů se specifickými dialogy a průvodci pro automatické vkládání správných značek HTML[17], navíc automatické doplňování všech značek a jejich atributů[18] spolu s funkcí Zencoding/emmet[19] pomáhá při rychlé tvorbě webových stránek[20].

Bluefish je rozšiřitelný pomocí pluginů a externích nástrojů a skriptů[21][22][23] Mnoho skriptů je předkonfigurováno, včetně statické analýzy kódu a kontroly syntaxe a značek pro různé značkovací a programovací jazyky, jako je lint nebo weblint[24].[25] Také jednoduchá funkce podobná macru zvaná „vlastní menu“ pomáhá urychlit opakující se akce[26][27].[28] Předkonfigurována je velká sada maker pro PHP a HTML.

Zdrojový kód a vývoj

Zdrojový kód Bluefish je dostupná na stánce SourceForge. Po krátkém období, kdy si vývojáři Bluefish posílali části kódu prostřednictvím e-mailu,[29] se Bluefish připojil jako jeden z prvních projektů na SourceForge. Komunita se připojila v prvních měsících po spuštění, hlavně díky Robinu Millerovi, který byl velkým uživatelem Bluefish a pracoval pro Geeknet, který vlastnil SourceForge. Zpočátku se pro správu verzí kódu používal systém CVS, později se začal používat SVN.

Bluefish má zdrojový kód psaný převážně v jazyce C a pro své ovládací prvky (GUI) používá multiplatformní knihovnu GTK. Podpora značkovacích a programovacích jazyků je definována v souborech XML, které se načítají pomocí Libxml2. Volitelné pluginy vyžadují libenchant, python and libgucharmap. Sestavení binárního souboru se provádí pomocí nástrojů Automake a Autoconf, které konfigurují a nastavují prostředí pro sestavení. Ke kompilaci Bluefish lze použít llvm i GCC. V systému Windows se k sestavení binárních souborů používá MinGW. Na OSX existují porty Fink[30] a Macports[31], ale oficiální binární soubor se sestavuje pomocí Gtk-OSX-Integration[32].

Bluefish má API pro pluginy v jazyce C, ale to bylo použito hlavně k oddělení neudržovaných částí (jako je infobrowser-plugin) od udržovaných částí. Existuje také několik pluginů v jazyce Python, které však pro interakci s hlavním programem potřebují plugin v jazyce C. Bluefish podporuje také velmi volně vázané pluginy: externí skripty, které čtou standardní vstup a vracejí své výsledky prostřednictvím standardního výstupu, může uživatel konfigurovat v panelu předvoleb[33]. Různé skripty pro javascript, json, CSS a formátování HTML jsou součástí distribuce Bluefish.

Historie

Bluefish začali vytvářet Chris Mazuc a Olivier Sessink v roce 1998 s cílem usnadnit vývoj webových aplikací na desktopových platformách Linux. V roce 1998 byl založen KDE 1.0, a v roce 1999 GNOME 1.0. Bluefish byl v té době jedním z mála editorů zaměřených na vývoj webových stránek v systému Linux. Linux, díky softwarovému balíčku LAMP, se stával nejoblíbenější platformou pro web hosting.[zdroj?] Bluefish se tak rychle stal součástí hlavních Linuxových distribucí, jako Debian, Knoppix (v té době nejpopulárnější Linuxová platforma) a první verze Fedory. V raných verzích Linuxu patřil Bluefish k nejdůležitějším webovým editorem. Různé knihy o vývoji webových stránek v Linuxu se proto zabývají použitím Bluefish. Například Practical PHP and MySQL od komunitního manažera Ubuntu Jono Bacona, který dokonce zahrnoval upravené live CD Ubuntu s Bluefish jako přednastaveným editorem.[34]

Vývoj Bluefish byl původně inspirován dvěma jinými editory: konfigurovatelné skenování a zvýrazňování syntaxe bylo inspirováno programem NEdit, ale uživatelské rozhraní bylo inspirováno programem Homesite, který byl k dispozici pouze pro Windows.[zdroj?] V počátečních fázích vývoje aplikace se používal pracovní název Thtml editor, který však malá vývojářská komunita považovala za příliš tajemný; krátce se používal název Prosite, od kterého se však upustilo, aby se předešlo střetům s firmami zabývajícími se vývojem webových stránek, které již tento název používaly. Název Bluefish byl nakonec zvolen poté, co bylo v mailing listu navrženo logo (dětská kresba modré ryby).[35]

Verze 1.0.x byla vydána v roce 2005 a obsahovala nové logo. Verze 1.0 byla představena na Slashdotu[36] a způsobovala slashdot efekt na stránce Bluefish. V roce 2005 byla vydána verze 1.3 pro Winefish, LaTeXový editor[37]. Vetze 2.0.x obsahovala velké změny, který měnil widget GTK-2 GtkTextView a nový syntaktický skenovací stroj založený na deterministickém konečném automatu. Verze 2.2.x, která je nyní aktuální, podporuje GTK-2 i GTK-3.

I když není Bluefish oficiální součástí Gnomu, je za její součást tento program často považován a dobře v Gnomu integruje[38].

Odkazy

Reference

V tomto článku byl použit překlad textu z článku Bluefish (software) na anglické Wikipedii.

  1. MORRISON, Michael. Ajax construction kit: building plug-and-play Ajax applications. Upper Saddle River, NJ: Prentice Hall 291 s. (Negus live Linux series). Dostupné online. ISBN 978-0-13-235008-2. OCLC 123485115 OCLC: ocn123485115. 
  2. BACON, Jono. Practical PHP and MySQL: building eight dynamic web applications. Upper Saddle River, NJ: Prentice Hall 512 s. (Negus live Linux series). Dostupné online. ISBN 978-0-13-223997-4. OCLC ocm71126856 OCLC: ocm71126856. 
  3. HALL, Tim; STACEY, J.-P. Python 3 for Absolute Beginners. Berkeley, CA: Apress, 2009. 300 s. (SpringerLink Bücher). Dostupné online. ISBN 978-1-4302-1632-2, ISBN 978-1-4302-1633-9. 
  4. SIKOS, Leslie F. Web standards: mastering HTML5, CSS3, and XML. [Berkeley, CA] : New York: Apress ; Distributed to the book trade worldwide by Springer Science+Business Media 507 s. (The expert's voice in Web development). Dostupné online. ISBN 978-1-4302-4041-9. OCLC 748329695 OCLC: ocn748329695. 
  5. HILL, Benjamin Mako; HELMKE, Matthew; BURGER, Corey. The official Ubuntu book. 4. ed. vyd. Upper Saddle River, NJ: Prentice Hall, 2016. 461 s. Dostupné online. ISBN 978-0-13-702120-8. 
  6. Translations - Bluefish Wiki. bfwiki.tellefsen.net [online]. [cit. 2025-01-28]. Dostupné online. 
  7. Bluefish Editor : Development. bluefish.openoffice.nl [online]. [cit. 2025-01-28]. Dostupné online. 
  8. DINNEEN, James. Storm forecasts get up to speed. New Scientist. 2024-07, roč. 263, čís. 3501, s. 19. Dostupné online [cit. 2025-02-04]. ISSN 0262-4079. doi:10.1016/s0262-4079(24)01352-6. 
  9. DUNLAP, Isaac Hunter. The open source movement. [s.l.]: Elsevier Dostupné online. ISBN 978-1-84334-161-1. S. 11–28. 
  10. BAKER, Martha K. Bovard, Oliver Kirby (27 May 1872–03 November 1945), newspaper editor. [s.l.]: Oxford University Press (American National Biography Online). Dostupné online. 
  11. Table 1: Manually evaluated features from retrieved datasets.. doi.org [online]. [cit. 2025-02-04]. Dostupné online. 
  12. NEWMAN, John Henry. April 1857 to December 1858. [s.l.]: Oxford University Press Dostupné online. 
  13. TURKEL, William J.; CRYMBLE, Adam. Installer un environnement de développement intégré pour Python (Linux). Programming Historian en français. 2021-10-06, čís. 3. Dostupné online [cit. 2025-02-04]. ISSN 2631-9462. doi:10.46430/phfr0019. 
  14. BLOG: Top 10 Blog Posts For April Include Reinhardt On HSAs. Forefront Group [online]. 2007-05-01 [cit. 2025-02-04]. Dostupné online. 
  15. BAKER, Martha K. Bovard, Oliver Kirby (27 May 1872–03 November 1945), newspaper editor. [s.l.]: Oxford University Press (American National Biography Online). Dostupné online. 
  16. GUI Programming with Ruby/GTK2. [s.l.]: Chapman and Hall/CRC Dostupné online. ISBN 978-0-429-18462-8. S. 387–420. 
  17. NEWMARCH, Jan. Overview of Linux Sound Architecture. Berkeley, CA: Apress Dostupné online. ISBN 978-1-4842-2495-3, ISBN 978-1-4842-2496-0. S. 15–19. 
  18. NEWMAN, John Henry. April 1857 to December 1858. [s.l.]: Oxford University Press Dostupné online. 
  19. Bluefish. AccessScience [online]. [cit. 2025-02-04]. Dostupné online. 
  20. KEEHLEY, Pat; MEDLIN, Steve. Productivity Enhancements through Quality Innovations. Public Productivity & Management Review. 1991, roč. 15, čís. 2, s. 217. Dostupné online [cit. 2025-02-04]. ISSN 1044-8039. doi:10.2307/3380762. 
  21. BAKER, Martha K. Bovard, Oliver Kirby (27 May 1872–03 November 1945), newspaper editor. [s.l.]: Oxford University Press (American National Biography Online). Dostupné online. 
  22. DINNEEN, James. Storm forecasts get up to speed. New Scientist. 2024-07, roč. 263, čís. 3501, s. 19. Dostupné online [cit. 2025-02-04]. ISSN 0262-4079. doi:10.1016/s0262-4079(24)01352-6. 
  23. Getting the Best of Both Worlds with PHP and Spry. Berkeley, CA: Apress Dostupné online. ISBN 978-1-59059-859-7, ISBN 978-1-4302-0288-2. S. 693–729. 
  24. MISRA*, Ben. The Ides of March in India. Current History. 1922-08-01, roč. 16, čís. 5, s. 815–820. Dostupné online [cit. 2025-02-04]. ISSN 0011-3530. doi:10.1525/curh.1922.16.5.815. 
  25. PAJANKAR, Ashwin. Directory Commands and Text Editors. Berkeley, CA: Apress Dostupné online. ISBN 978-1-4842-6509-3, ISBN 978-1-4842-6510-9. S. 53–65. 
  26. Figure 6: Small bonito (A), larger bonito (B), small bluefish (C), and larger bluefish (D), showing inter- and intra-annual changes in landed catch (black) and unit real prices (green (A & C) and red (B & D)) from January 2009 to December 2019.. doi.org [online]. [cit. 2025-02-04]. Dostupné online. 
  27. XIA, Haoxiang. A Collective-Intelligence View on the Linux Kernel Developer Community. International Journal of Knowledge and Systems Science. 2010-07-01, roč. 1, čís. 3, s. 20–32. Dostupné online [cit. 2025-02-04]. ISSN 1947-8208. doi:10.4018/jkss.2010070102. 
  28. PARREIRAS, Caio Roberto; MACHADO, Pedro Paulo da Cunha. Braço robótico educativo com linux e linguagem opensource para o ensino de álgebra de matrizes. Brazilian Journal of Development. 2024-01-17, roč. 10, čís. 1, s. 1512–1527. Dostupné online [cit. 2025-02-04]. ISSN 2525-8761. doi:10.34117/bjdv10n1-097. 
  29. VAN WENDEL DE JOODE, Ruben. The Organization of Open Source Communities. SSRN Electronic Journal. 2005. Dostupné online [cit. 2025-01-27]. ISSN 1556-5068. doi:10.2139/ssrn.695902. (anglicky) 
  30. Bluefish. AccessScience [online]. [cit. 2025-02-18]. Dostupné online. 
  31. Bluefish. AccessScience [online]. [cit. 2025-02-18]. Dostupné online. 
  32. Installing PHP-GTK. [s.l.]: Apress Dostupné online. ISBN 978-1-59059-613-5. S. 15–23. 
  33. BAKER, Martha K. Bovard, Oliver Kirby (27 May 1872–03 November 1945), newspaper editor. [s.l.]: Oxford University Press (American National Biography Online). Dostupné online. 
  34. XIA, Haoxiang. A Collective-Intelligence View on the Linux Kernel Developer Community. International Journal of Knowledge and Systems Science. 2010-07-01, roč. 1, čís. 3, s. 20–32. Dostupné online [cit. 2025-01-27]. ISSN 1947-8208. doi:10.4018/jkss.2010070102. 
  35. XIA, Haoxiang. A Collective-Intelligence View on the Linux Kernel Developer Community. International Journal of Knowledge and Systems Science. 2010-07-01, roč. 1, čís. 3, s. 20–32. Dostupné online [cit. 2025-02-18]. ISSN 1947-8208. doi:10.4018/jkss.2010070102. 
  36. BERNIER, Melanie; GANLEY, Dale. Will Networking Nerds Pay for Stuff That Matters? The Relationship between Social Networks and Subscriptions in Virtual Communities. In: 2009 International Conference on Computational Science and Engineering. [s.l.]: IEEE, 2009. Dostupné online. doi:10.1109/cse.2009.441. S. 741–746.
  37. Decoding <scp>GitHub</scp> Copilot. Programming with GitHub Copilot. 2024-08-06, s. 17–22. Dostupné online [cit. 2025-02-18]. doi:10.1002/9781394319787.ch2. 
  38. PETERSEN, Richard. The GNOME Desktop. Berkeley, CA: Apress Dostupné online. ISBN 978-1-4842-3881-3, ISBN 978-1-4842-3882-0. S. 285–323. 

Externí odkazy

Média použitá na této stránce

Bluefish-icon.svg
Autor: Bluefish project, Licence: GPLv2
the logo of the free text editor Bluefish