From 6e36071dcd168be47c7b34432eb6759a0475b882 Mon Sep 17 00:00:00 2001 From: Stefan Imhoff Date: Fri, 3 Jan 2025 17:51:54 +0100 Subject: [PATCH] feat(tools): add Ghostty terminal emulator and Zed --- public/assets/images/tools/ghostty.png | Bin 0 -> 17109 bytes public/assets/images/tools/ghostty.webp | Bin 0 -> 2374 bytes public/assets/images/tools/zed.png | Bin 0 -> 11514 bytes public/assets/images/tools/zed.webp | Bin 0 -> 1662 bytes src/content/journal/2024/raycast.mdx | 2 +- src/data/tools.ts | 11 ++++++++--- src/pages/tools.mdx | 2 +- 7 files changed, 10 insertions(+), 5 deletions(-) create mode 100644 public/assets/images/tools/ghostty.png create mode 100644 public/assets/images/tools/ghostty.webp create mode 100644 public/assets/images/tools/zed.png create mode 100644 public/assets/images/tools/zed.webp diff --git a/public/assets/images/tools/ghostty.png b/public/assets/images/tools/ghostty.png new file mode 100644 index 0000000000000000000000000000000000000000..3c32627af166ae65f5a2ac21c825be60338c9e40 GIT binary patch literal 17109 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 QNdN!<07*qoM6N<$f>hGL5dZ)H literal 0 HcmV?d00001 diff --git a/public/assets/images/tools/ghostty.webp b/public/assets/images/tools/ghostty.webp new file mode 100644 index 0000000000000000000000000000000000000000..d70003f4d2811fba37067850d04e8e962b1ac926 GIT binary patch literal 2374 zcmV-M3Ay%CNk&FK2><|BMM6+kP&il$0000G0001g004gg06|PpNT&k;01cpa+qUYq z+50{*m@&-E%=oj*%*+(#v_?s`rT5PM*53DgZ@C>2F#-5bM3*FV1OX5PK@t27f&d7D z00AzPTZQf-Y)&P+B-osU0Ugo?!G`IEIC zLRsImch^Yg%}@F&(2kq49fXwaL&wH{dhxjmLL9$BLuf}&9q+#QJyZnZ!nrvFxU}?%TEImnMGe`6a5!NacB zH+_HDjR>}9x=+j(u_KKDwy|deYHme{T9s?QR6`ug?8A2@5+$aP7s4qH2{QP0h@*q~Q}hr?DsmJemm{Ib z0gN3LyZ`?z#xDK>BlpK&VC4Sz3;cr@eKB?r7`gZhjNG5)qCbIAfEYQ!$(Jz>1_$36 zk|<A!oD~UjNrB(6P z>oi*tm`@vtCoy|cnT){GtZDFU$?arw_;k-&-h^AWtsK10^G4nIf-O8An+@Kr?r@pD zWc;*pzy+@VErtZ|(ob_cCIff(@npm0kPY5z9xDf}_ZdgQ985pn-Mf_m%f5X$-As_9 zQhR&l?0CQ)elj@<=3?pmyR9=r!TR}qH(7PaRjJ+jboOLBP;>8hXWI#L(!jp{a?^>? z5b4>63!8=$B4^nk`|69y6SGNh2KPQ%-8`B&-)J48-^2yLYfWIm2bYWiH(~lYAyiQ{rTR*`P#P0O4*^HW@(x( zetTLOO4mnYbl^_N1ZEs3l}jj7fso8v zH12W(=m0gKdDBFG`yJsAnq=<0s9ujy{GolZB4i7zv?pn!`8mn1>`-_I=TdO_ivh8 zO9?K^1p`{Eaoolk{37y6n4*2X+i%l1$scZ@A8Vk>zxAJ4NmF$GAJNa*aaYsT!McH? zH`V|74IZ-c$3=gQRWjf`9haB3^CN;Q!t5E{f(od#KS(gM1KJ@zYY?>xZ98dSwrNE0 zdYP=(u59#62XoQ#st0XheS(MKm}X6IG$Ev>V-}dV?YmrPCNP{e40pDTeeo9wV}Ke` zn^7@q`b{lXIg*N=Lyq$VgLaubh7bjVHK*LoW5SPuSCGvZNhvh(wPJ+ZY*a>HLGqDB z>^Madw9>*f+hk&ksU`6bW^;NS4*mMhm8T#xDXTEydGzZuw*cS5&~>PUO;Gd)D>j%z z0rgEqc{qTaF489(Iy;e)t^9K;@@|3msSuOty&(8^Ym5f}N9pGcp9oIw-2T%JiucMB z5q_@(o4&h1P04vH*LZ(aendfCbY}1uY=iEvze8;Edof2QV?L$w63Ve3Cs)-75&0#H ztf_6K9^Q4>i#KyivUa==6(v!-Va&1q;7H?G3YbwX1+ynJQEuTK$lKWGW{dZZC@Xg^ zzL@`e^7Xf|&m}Fiq(2-QQzW-%XOHy%p|+A9kkQZ)qN5IRqON1CR@P1zqH{0^`5H3adot$ z0;bWxmad|36~0roG3J}rw+uwF4}$KW{Pfd6B5K)!T$q7QI>Xg;TFaqj?yG6yq5tcz zW3k~(wV%aQMS$c)F`4=6Oa3qJvpKW_QB)mu+cpZ0RAqvJC|-=lh!^UQWDqo%{D!KU zr|V2K`$!;Wpqb_XB`8=aBAJriT=2gXPCfUYS675KqG^$ZcazGq#6+56gpS?C#Q6(q z84z0bf?7XV3T9F!hvYFE{WDeeo2JDyIECi;SOqRWQ85ohvq#BV*(WwrDBW&1LbFEa z5G33<09))tVl`$}c6(hM2S}GDatgi;f-cvD6J@bDBIGGauZD45B2k(r+(A_p(xC;J%Z2xLER*mRF? z-)un-U3J@_;l;}B+5yt5abq1_PF(#YXTeYXd)p9B^aK%CvzrU9jsevX>*SamgHvCn zygU|IlA7MvSu%kwLo$$Ox>!qQ%x-=D#nC!y-|o s))A-jh~-WKHCBkjWJ$&W+8CaT`y{}W=~m|E$}BVqB=^zFVnJ(w0Kz1R)c^nh literal 0 HcmV?d00001 diff --git a/public/assets/images/tools/zed.png b/public/assets/images/tools/zed.png new file mode 100644 index 0000000000000000000000000000000000000000..359537bef7da60ada7ea8271f1159e60ad25fd2c GIT binary patch literal 11514 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 literal 0 HcmV?d00001 diff --git a/public/assets/images/tools/zed.webp b/public/assets/images/tools/zed.webp new file mode 100644 index 0000000000000000000000000000000000000000..651741a63bd214f0e5df9262ad8d10151466b0b4 GIT binary patch literal 1662 zcmV-^27&ofNk&F?1^@t8MM6+kP&il$0000G0001g004gg06|PpNX!BN009}YN!t`j zJ0_z4QM^#`5aiIdZEDXsPrq&3wo%2dY;@^tqqNQHS1Q|1I@`AMy?5i>`@VbPWJFBB z1VHewLtVHqe!RJHq0%T2KmdInpwE5<^C@6H4;Th8jDy2luRQa}Z8tbqhGt6Ti3FV7 zbV{RP@*w93F+eXsimEsrOt;=-(d_4Mw2pvGqYN=xD4TUR7Lcv3vrdqWJS+la?4=c7 zwh2}TNIH=>n*^%^r0ovb!b2S(@mHR*!xBL1mpmq}Cm{KaETRI9BD)tFh#CV(ztL4< z!nGkk(6x=hEh-`qw&fXBv3=Pxmz)w+xh8;#@xM|YSa9>L%ZmvSm z5FilX9s$sZqVWqu1PH?o`Juue;sv}>;e{J=MTI-S-9Uu_ann$t0o19uAq5o*Za_x` zLfi~w0PZR(_#;H!f50=p`!VE!KYuLbk;#xJkoi%v@N=NTfjkq#i+P8NcL4X-sCb3n zb5uOX@M0dL;t9b04l3?ocrmv*(7@aPxcl2rL&9SweqPpzLBeT1__-RXITB8C$4^sh zI1+Z#@k1e&px}`+6#Rg<(IODAfgd2ykgYHIS=MnS0{I)nAiXU@C`15PNm`QK8}oSp zLXnRaJV|b`2nsR4;H#3{jyu8)5bY{R6q(&JgC8VJ;lhV2c|9~i7!?q&(5c>#)ol|+ z(*Zjo^wLdoI%$q*24GLd;fcdulFwT!oe;qQ>}q-Ag*|q0kc(xv<+21&0sAtqJ$1!u z4IYrk6FaRJD26)(?99CN*nOwXH^FL0J>&;D+Y^_Za@1ux;`mSjyPICR@22bam~Sv2 zAp&@D=SrheAp`)j2?GGbm@MzS@zQe-+`)v4lO&W*1)S0J(gQbKa)H61QK=LN0R-&L z0EV$xOz*to4j>Hz&dNBv@&rN(gb+Xo*qs5)rxx(nV^&Z&AcO+|0I(MTodGI<0Du5K zkwl$KC8MS)BbM5UKoSXQ25hZu71y`FkU{^`DRi}2)!5Cq@` zSuQR~-u;tw6*pEJ`U}L5viDHwXyYV2vj;z1eE4{$5%4hSXc^Sd8g;3Yp(wJW{GKX= z*@fKvdbfjZA_gpr(1Yr)A1ftypiX2EYPpV3dr9#<+KmTZgeNt9QPp65wU)Xq^ z!RhryrcKEHoNgcby+<-6jP|f7~ zGQ5y@$>nY=msql9AG5iRAhCTeH(Ee2kle#`!c(=QGP&>=?(v^vA3evY0O=GQx%c#( zUl~;S8b3d=WkEn8ZIBptGoKIRN4PyTl@;X(pi2T)3uxjq&@}ceL zsN^mOgBEfL*IPh!bsU#_$+*+!cIDV{FIOT}HqFxpl<2u-b;TLb`r}iUc)M0_wOHXo za*-zs=^gI`UpAP`C$6`qxw>!5$=GF2ok$+@+i&Xzq@W5pxBhtbDGuAu2m0xwGnQsd zmmh||U-|8-2X}>YwJ%6Lg@P^trQ!ZRF#t*au^;lia{Jl#_6kyI==cYIDY{o{!@u8T z(YVzD!Xd(RV?<^p6ajD%`qm6`5rt!d{arkQp_oldkO4or1Z!$a7hKd$%daZzp*$bQ z*x`Zs&!>>og7pvqU<6*I1x;t_Z1FxFxy=>kyp6_t8N9S{BMoeoTYTGrWSFQ@ojoiE zf0||F$%U-@g2JcosyQeb+sZ+qY%m%f(T*}BC5;_6;{&Xxa0gz#oV IK%hAQ0P7JQ$p8QV literal 0 HcmV?d00001 diff --git a/src/content/journal/2024/raycast.mdx b/src/content/journal/2024/raycast.mdx index 775a6d5..2898e88 100644 --- a/src/content/journal/2024/raycast.mdx +++ b/src/content/journal/2024/raycast.mdx @@ -245,7 +245,7 @@ As a developer, you work a lot with version control. I use the [GitHub](https:// Homebrew Show Installed -I use the [Kill Process](https://www.raycast.com/rolandleth/kill-process) extension to terminate hung processes. The [Port Manager](https://www.raycast.com/lucaschultz/port-manager) allows me to view or kill ports. The [Brew](https://www.raycast.com/nhojb/brew) extension allows me to use Homebrew from Raycast. I work a lot with Neovim and tmux in my WezTerm terminal. The [Tmux Sessioner](https://www.raycast.com/louishuyng/tmux-sessioner) allows me to jump directly into the terminal in a specific project. +I use the [Kill Process](https://www.raycast.com/rolandleth/kill-process) extension to terminate hung processes. The [Port Manager](https://www.raycast.com/lucaschultz/port-manager) allows me to view or kill ports. The [Brew](https://www.raycast.com/nhojb/brew) extension allows me to use Homebrew from Raycast. I work a lot with Neovim and tmux in my Ghostty terminal. The [Tmux Sessioner](https://www.raycast.com/louishuyng/tmux-sessioner) allows me to jump directly into the terminal in a specific project. I use extensions to format or create code. For example, I use [SVGO](https://www.raycast.com/kaichi/raycast-svgo) to optimize SVGs, [SVGR](https://www.raycast.com/rickMcGavin/svgr) to create React components from SVGs, and tools like [Format JSON](https://www.raycast.com/destiner/json-format) and [Prettier Code](https://www.raycast.com/lin/prettier) to format any code. It’s convenient to format the code before pasting it anywhere on the web. diff --git a/src/data/tools.ts b/src/data/tools.ts index 25cf9f3..633f028 100644 --- a/src/data/tools.ts +++ b/src/data/tools.ts @@ -10,15 +10,20 @@ export const development = [ url: 'https://neovim.io/', image: '/assets/images/tools/neovim.webp', }, + { + name: 'Ghostty', + url: 'https://ghostty.org/', + image: '/assets/images/tools/ghostty.webp', + }, { name: 'Tmux', url: 'https://tmux.github.io/', image: '/assets/images/tools/tmux.webp', }, { - name: 'Wezterm', - url: 'https://wezfurlong.org/wezterm/', - image: '/assets/images/tools/wezterm.webp', + name: 'Zed', + url: 'https://zed.dev/', + image: '/assets/images/tools/zed.webp', }, { name: 'Kaleidoscope', diff --git a/src/pages/tools.mdx b/src/pages/tools.mdx index 4a3256b..868fdb8 100644 --- a/src/pages/tools.mdx +++ b/src/pages/tools.mdx @@ -31,7 +31,7 @@ Besides that, I have a few backup hard drives for automatic Time Machine backups ## Development -[Neovim](https://neovim.io/) with [LazyVim](https://www.lazyvim.org/) as a plugin manager is my default code editor. I use it in the [Wezterm terminal emulator](https://wezfurlong.org/wezterm/) with the [Tmux terminal multiplexer](https://tmux.github.io/). Occasionally, I use [Visual Studio Code](https://code.visualstudio.com/) with the [Neovim extension](https://marketplace.visualstudio.com/items?itemName=asvetliakov.vscode-neovim). I use [LazyGit](https://github.com/jesseduffield/lazygit) for Git. +[Neovim](https://neovim.io/) with [LazyVim](https://www.lazyvim.org/) as a plugin manager is my default code editor. I use it in the [Ghostty terminal emulator](https://ghostty.org/) with the [Tmux terminal multiplexer](https://tmux.github.io/). Occasionally, I use [Zed](https://zed.dev/). I use [LazyGit](https://github.com/jesseduffield/lazygit) for Git.