[{"data":1,"prerenderedAt":657},["ShallowReactive",2],{"blog-post-how-to-use-vim":3,"recent-posts":591},{"id":4,"uid":5,"url":6,"type":7,"href":8,"tags":9,"first_publication_date":10,"last_publication_date":11,"slugs":12,"linked_documents":14,"lang":15,"alternate_languages":16,"data":17},"XVNSVhMAACIApjSg","how-to-use-vim",null,"blog_posts","https:\u002F\u002Fmarks-personal-website.cdn.prismic.io\u002Fapi\u002Fv2\u002Fdocuments\u002Fsearch?ref=auzrLRIAACcAt6BE&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22XVNSVhMAACIApjSg%22%29+%5D%5D",[],"2019-08-14T00:55:26+0000","2020-12-12T08:10:01+0000",[13],"how-to-use-vim-customize--plugins",[],"en-us",[],{"title":18,"date":23,"description":24,"image":29,"content":40},[19],{"type":20,"text":21,"spans":22},"heading1","How to Use Vim (Customize & Plugins)",[],"2019-03-30",[25],{"type":26,"text":27,"spans":28},"heading2","Is learning how to use Vim difficult? Is the learning curve really that steep as many people make it out to be? I'll show you how it is a text editor made with simplicity in mind.",[],{"dimensions":30,"alt":33,"copyright":6,"url":34,"id":35,"edit":36},{"width":31,"height":32},1920,1080,"how to use vim with plugins","https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F94124d9d46e2a15717255fb3ef09b778b71d8d7f_how_to_use_vim.jpg?auto=compress,format","XVCMbBMAACEAmaxz",{"x":37,"y":37,"zoom":38,"background":39},0,1,"#fff",[41,45,54,60,66,69,75,78,84,90,96,106,110,113,116,125,131,135,146,149,155,161,166,177,190,193,209,212,219,225,231,234,240,244,248,251,255,258,261,264,269,272,275,280,284,287,290,296,302,305,308,311,320,327,330,338,341,344,352,358,361,365,368,371,376,384,387,395,398,404,407,412,417,420,423,426,433,441,444,452,457,464,468,474,480,483,491,494,497,500,503,506,514,520,523,531,534,538,546,549,552,555,560,563,567,570,573,576,579,588],{"type":42,"text":43,"spans":44},"heading3","Intro",[],{"type":46,"text":47,"spans":48},"paragraph","Vim has been perceived by many as a difficult text editor to use.",[49,52],{"start":37,"end":50,"type":51},65,"em",{"start":37,"end":50,"type":53},"strong",{"type":46,"text":55,"spans":56},"Unlike any other editor, having to learn Vim at a basic level requires some familiarity with the keybindings to move with.",[57],{"start":58,"end":59,"type":51},41,44,{"type":46,"text":61,"spans":62},"The Vim keybindings themselves take a bit of time to grasp, but the user will easily edit files after taking the hurdle.",[63],{"start":64,"end":65,"type":51},4,7,{"type":46,"text":67,"spans":68},"The hurdle itself isn't as enormous as many people make it out to be.",[],{"type":46,"text":70,"spans":71},"With the right amount of guidance, it won't take too long to overcome Vim for the average user to move forward.",[72],{"start":73,"end":74,"type":51},70,73,{"type":46,"text":76,"spans":77},"Now let's talk about what makes this minimalistic editor stand out.",[],{"type":42,"text":79,"spans":80},"What makes Vim special",[81],{"start":82,"end":83,"type":51},11,14,{"type":46,"text":85,"spans":86},"Similar to emacs, Vim is a lightweight editor that can be used to edit files instantly.",[87],{"start":88,"end":89,"type":51},18,21,{"type":46,"text":91,"spans":92},"When opening up a file in Vim, the editor presents itself with the bare minimum to begin letting the user edit.",[93],{"start":94,"end":95,"type":51},26,29,{"type":97,"url":98,"alt":99,"copyright":6,"dimensions":100,"id":103,"edit":104},"image","https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F57a51246a23d793c0bf7847fd1390df1ed828789_vim-screen.png?auto=compress,format","vim main screen",{"width":101,"height":102},3288,2476,"XaA_VBAAACIAgEpI",{"x":37,"y":37,"zoom":38,"background":105},"transparent",{"type":107,"text":108,"spans":109},"list-item","Files open up instantly.",[],{"type":107,"text":111,"spans":112},"A simple cursor to navigate through the file.",[],{"type":107,"text":114,"spans":115},"A line counter and percentage indicator to notify the user's current location in the file.",[],{"type":46,"text":117,"spans":118},"For the experienced individual, this is all that they need to make quick adjustments or to take a look at what's written in the file.",[119],{"start":37,"end":120,"type":121,"data":122},30,"hyperlink",{"link_type":123,"url":124},"Web","https:\u002F\u002Fmarkperez.dev\u002Fblog\u002Finstall-arch-linux-lvm\u002F",{"type":46,"text":126,"spans":127},"But for someone who accidentally types the Vim command, it will not be intuitive enough to learn how to move or even exit out.",[128],{"start":129,"end":130,"type":51},43,46,{"type":46,"text":132,"spans":133},"If someone hasn't spent the right amount of time getting used to Vim's way of doing things, it can seem counterintuitive to get simple tasks done.",[134],{"start":50,"end":73,"type":51},{"type":46,"text":136,"spans":137},"This leads to many people not furthering their Vim experience, thus, getting bad-mouthed as a constraint to use.",[138,141],{"start":139,"end":140,"type":51},47,50,{"start":142,"end":143,"type":121,"data":144},77,88,{"link_type":123,"url":145},"https:\u002F\u002Fthoughtbot.com\u002Fblog\u002Fthe-vim-learning-curve-is-a-myth",{"type":42,"text":147,"spans":148},"What it's really like",[],{"type":46,"text":150,"spans":151},"In reality, if one learns and understands one of the few basic keybindings, such as to save, add, exit, or even search, then Vim will start to become very familiar.",[152],{"start":153,"end":154,"type":51},125,128,{"type":46,"text":156,"spans":157},"Why can't Vim just function like all the others? Won't that make it compete just as well as editors such as VSCode, Atom, etc.?",[158],{"start":159,"end":160,"type":51},10,13,{"type":46,"text":162,"spans":163},"The thing is, Vim is just different; it just has another way of doing things compared to most editors.",[164],{"start":83,"end":165,"type":51},17,{"type":46,"text":167,"spans":168},"Time spent learning Vim will not be a waste since it can be used across any operating system.",[169,172],{"start":170,"end":171,"type":51},20,24,{"start":173,"end":174,"type":121,"data":175},72,92,{"link_type":123,"url":176},"https:\u002F\u002Fmarkperez.dev\u002Fblog\u002Finstall-macos-mojave-xps-13-9360\u002F",{"type":46,"text":178,"spans":179},"Also, once one understands Vim, they will notice programs that share Vim's keybindings and etiquette.",[180,182,187],{"start":181,"end":120,"type":51},27,{"start":183,"end":184,"type":121,"data":185},49,57,{"link_type":123,"url":186},"https:\u002F\u002Freversed.top\u002F2016-08-13\u002Fbig-list-of-vim-like-software\u002F",{"start":188,"end":189,"type":51},69,74,{"type":46,"text":191,"spans":192},"Can't wait to get the latest tips and tricks?",[],{"type":194,"oembed":195},"embed",{"type":196,"embed_url":197,"title":198,"provider_name":199,"thumbnail_url":200,"height":201,"width":202,"version":203,"author_name":204,"author_url":205,"provider_url":206,"cache_age":6,"thumbnail_width":202,"thumbnail_height":207,"html":208},"video","https:\u002F\u002Fyoutu.be\u002FtMWS0LUyC4s","How To Use Vim (Customize and Plugins)","YouTube","https:\u002F\u002Fi.ytimg.com\u002Fvi\u002FtMWS0LUyC4s\u002Fhqdefault.jpg",270,480,"1.0","Mark Perez","https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCCZ1Yo4NOdWW03jamsNFA8w","https:\u002F\u002Fwww.youtube.com\u002F",360,"\u003Ciframe width=\"480\" height=\"270\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FtMWS0LUyC4s?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen>\u003C\u002Fiframe>",{"type":42,"text":210,"spans":211},"Resources",[],{"type":107,"text":213,"spans":214},"Homebrew (macos)",[215],{"start":37,"end":216,"type":121,"data":217},16,{"link_type":123,"url":218},"https:\u002F\u002Fbrew.sh\u002F",{"type":107,"text":220,"spans":221},"My (.vimrc) file",[222],{"start":37,"end":216,"type":121,"data":223},{"link_type":123,"url":224},"https:\u002F\u002Fgithub.com\u002Fmarkperez1904\u002Fdotfiles",{"type":107,"text":226,"spans":227},"VimAwesome",[228],{"start":37,"end":159,"type":121,"data":229},{"link_type":123,"url":230},"https:\u002F\u002Fvimawesome.com\u002F",{"type":42,"text":232,"spans":233},"Commands",[],{"type":46,"text":235,"spans":236},"open Vim",[237],{"start":238,"end":239,"type":51},5,8,{"type":241,"text":242,"spans":243},"preformatted","vim (file)",[],{"type":46,"text":245,"spans":246},"save the file in Vim",[247],{"start":165,"end":170,"type":51},{"type":241,"text":249,"spans":250},":w",[],{"type":46,"text":252,"spans":253},"quit Vim",[254],{"start":238,"end":239,"type":51},{"type":241,"text":256,"spans":257},":q",[],{"type":46,"text":259,"spans":260},"save and exit",[],{"type":241,"text":262,"spans":263},":wq",[],{"type":46,"text":265,"spans":266},"exit without saving",[267],{"start":238,"end":268,"type":53},12,{"type":241,"text":270,"spans":271},":q!",[],{"type":42,"text":273,"spans":274},"Getting started",[],{"type":46,"text":276,"spans":277},"If you want to follow along with a walkthrough, then look no further.",[278],{"start":279,"end":130,"type":53},35,{"type":46,"text":281,"spans":282},"Getting started with Vim is pretty straightforward.",[283],{"start":89,"end":171,"type":51},{"type":46,"text":285,"spans":286},"Depending on your operating system, it is typically executed by typing out \u003Ccode>vim\u003C\u002Fcode> onto the command line.",[],{"type":46,"text":288,"spans":289},"To begin editing a brand new file on the command line, let's create a simple java program by typing out \u003Ccode>vim practice.java\u003C\u002Fcode>.",[],{"type":46,"text":291,"spans":292},"You'll be prompted in the command line with the Vim screen like so:",[293],{"start":294,"end":295,"type":51},48,51,{"type":97,"url":297,"alt":298,"copyright":6,"dimensions":299,"id":300,"edit":301},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F3fabcf30835c46a55f25af05fb9ecd38db3a43f3_open-vim.png?auto=compress,format","open vim",{"width":101,"height":102},"XZ675BAAACIAeY5e",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":303,"spans":304},"At this point, you may be wondering, \"how do I edit the file\"?",[],{"type":46,"text":306,"spans":307},"Don't worry. You've reached the point where most beginners get stuck and cannot move.",[],{"type":46,"text":309,"spans":310},"To begin editing the text file type, hit \u003Ccode>esc\u003C\u002Fcode>, then press \u003Ccode>a\u003C\u002Fcode>.",[],{"type":46,"text":312,"spans":313},"As indicated in the bottom-left corner, you will now enter Insert mode:",[314,316,318],{"start":170,"end":315,"type":53},38,{"start":317,"end":50,"type":53},59,{"start":319,"end":73,"type":53},66,{"type":97,"url":321,"alt":322,"copyright":6,"dimensions":323,"id":325,"edit":326},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002Fbdb29b40415c30430e05ca37d227ea8da01efd0d_vim-insert-mode.png?auto=compress,format","vim insert mode",{"width":101,"height":324},2548,"XZ675BAAACMAeY5j",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":328,"spans":329},"Insert mode lets the user start editing the file.",[],{"type":46,"text":331,"spans":332},"Although there are many options to enter such as command mode, visual mode, and normal mode, I personally just use insert mode the most.",[333,335],{"start":183,"end":334,"type":53},76,{"start":336,"end":337,"type":53},79,91,{"type":46,"text":339,"spans":340},"Pressing down with any keystroke will be recorded onto the file.",[],{"type":46,"text":342,"spans":343},"Let's write out some code to test it out (make sure to move the cursor):",[],{"type":97,"url":345,"alt":346,"copyright":6,"dimensions":347,"id":350,"edit":351},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F9b05bd31c21b3f59718e1a45a98f912c44acac85_java-code-in-vim.png?auto=compress,format","java code in vim",{"width":348,"height":349},2044,1180,"XZ674xAAACEAeY5d",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":353,"spans":354},"We have written our first code snippet in Vim.",[355],{"start":356,"end":357,"type":51},42,45,{"type":46,"text":359,"spans":360},"To save these changes on command, it's important to follow these steps:",[],{"type":362,"text":363,"spans":364},"o-list-item","Hit the \u003Ccode>esc\u003C\u002Fcode> key (disables Insert mode).",[],{"type":362,"text":366,"spans":367},"Type out \u003Ccode>:wq\u003C\u002Fcode> (write and quit).",[],{"type":362,"text":369,"spans":370},"Finally, press \u003Ccode>↵\u003C\u002Fcode> (enter) to confirm.",[],{"type":46,"text":372,"spans":373},"That's all that needs to be done to change and close your saved work on command with Vim.",[374],{"start":375,"end":143,"type":51},85,{"type":46,"text":377,"spans":378},"The rumors spread around the web on how Vim is difficult to move and exit makes me laugh a lot from time to time.",[379,381],{"start":380,"end":129,"type":51},40,{"start":380,"end":74,"type":121,"data":382},{"link_type":123,"url":383},"https:\u002F\u002Fitsfoss.com\u002Fhow-to-exit-vim\u002F",{"type":46,"text":385,"spans":386},"Now, run the code and see if it works:",[],{"type":97,"url":388,"alt":389,"copyright":6,"dimensions":390,"id":393,"edit":394},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F05894beae3f71690231ee43a89bc3549efbfab25_run-the-java-code.png?auto=compress,format","run the java code",{"width":391,"height":392},2380,1108,"XZ6_TRAAACAAeZ1_",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":396,"spans":397},"Perfect.",[],{"type":46,"text":399,"spans":400},"When I first started to learn using Vim, it was difficult to find something such as this.",[401],{"start":402,"end":403,"type":51},36,39,{"type":46,"text":405,"spans":406},"Looking back, perhaps watching a video would have saved me the headache.",[],{"type":42,"text":408,"spans":409},"Customizing Vim",[410],{"start":268,"end":411,"type":51},15,{"type":46,"text":413,"spans":414},"If you've got the average setup that Vim defaults to, then changing it can make a huge difference to the user experience.",[415],{"start":416,"end":380,"type":51},37,{"type":46,"text":418,"spans":419},"To make changes, we need to edit a special file that is inside the home directly (located by going into the \u003Ccode>cd ~\u003C\u002Fcode> folder).",[],{"type":46,"text":421,"spans":422},"And that special file is the \u003Ccode>.vimrc\u003C\u002Fcode> dotfile.",[],{"type":46,"text":424,"spans":425},"Let's start editing it by typing out \u003Ccode>vim ~\u002F.vimrc\u003C\u002Fcode> into the terminal.",[],{"type":46,"text":427,"spans":428},"For the purposes of this tutorial, I'll be editing my dotfile and we'll only be looking at a specific section:",[429],{"start":295,"end":430,"type":121,"data":431},61,{"link_type":123,"url":432},"https:\u002F\u002Fgithub.com\u002Fmarkperez1904\u002Fdotfiles\u002Fblob\u002Fmaster\u002F.vimrc",{"type":97,"url":434,"alt":435,"copyright":6,"dimensions":436,"id":439,"edit":440},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F09be2d73cca39c3f58f01f7383b1bf4880bab45d_vimrc-piece.png?auto=compress,format","vimrc piece",{"width":437,"height":438},3052,2116,"XZ7DKhAAACIAea6T",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":442,"spans":443},"I'll break this down into 4 sections:",[],{"type":107,"text":445,"spans":446},"vim-plug automatic installation is a script that installs a Vim plugin manager (this will manage the plugins).",[447,449],{"start":37,"end":448,"type":53},31,{"start":450,"end":451,"type":51},60,63,{"type":107,"text":453,"spans":454},"vim-plug config - start call specifies where the list of plugins starts.",[455],{"start":37,"end":456,"type":53},28,{"type":107,"text":458,"spans":459},"Plugins are the list of plugins that'll be added (a plugin basically adds more functionality into Vim).",[460,461],{"start":37,"end":65,"type":53},{"start":462,"end":463,"type":51},98,101,{"type":107,"text":465,"spans":466},"vim-plug config - end call specifies where the list of plugins ends.",[467],{"start":37,"end":181,"type":53},{"type":46,"text":469,"spans":470},"By quickly glancing at the text file, we can easily tell it'll install 4 plugins.",[471],{"start":472,"end":473,"type":53},71,80,{"type":46,"text":475,"spans":476},"To apply these text changes, just type the \u003Ccode>:wq\u003C\u002Fcode> command onto the file, and reopen it with Vim.",[477],{"start":478,"end":479,"type":51},102,105,{"type":46,"text":481,"spans":482},"You should now be getting some sort of split-screen:",[],{"type":97,"url":484,"alt":485,"copyright":6,"dimensions":486,"id":489,"edit":490},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F1411834e566b3edc16f43cf6e5171a62a83a478b_vimrc-split-screen.png?auto=compress,format","vimrc split-screen",{"width":487,"height":488},3960,2260,"XZ7IyhAAACMAeceT",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":492,"spans":493},"Opening the dotfile will install plugins that we've specified, and store them inside the \u003Ccode>~\u002F.vim\u003C\u002Fcode> folder.",[],{"type":42,"text":495,"spans":496},"Adding plugins",[],{"type":46,"text":498,"spans":499},"Let's just say even if you decide to use my dotfile, you think there's still not enough customizations that'll suit your tastes.",[],{"type":46,"text":501,"spans":502},"I understand.",[],{"type":46,"text":504,"spans":505},"To download more plugins (or themes), go to the VimAwesome website:",[],{"type":97,"url":507,"alt":508,"copyright":6,"dimensions":509,"id":512,"edit":513},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F25bdc666c0c6960626b6f2bcfb28f66816102ea5_vim-awesome-homepage.png?auto=compress,format","vimawesome homepage",{"width":510,"height":511},1508,827,"XZ7LDhAAACMAedGQ",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":515,"spans":516},"They've got a awesome list of one of the most popular Vim plugins to choose from.",[517,518],{"start":83,"end":89,"type":51},{"start":519,"end":184,"type":51},54,{"type":46,"text":521,"spans":522},"I'll be adding a plugin that supports Markdown syntax:",[],{"type":97,"url":524,"alt":525,"copyright":6,"dimensions":526,"id":529,"edit":530},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F3efd00c376a8285def2441e26c0dd3bf6af8f046_vim-markdown.png?auto=compress,format","vim markdown",{"width":527,"height":528},1500,733,"XZ7QZRAAACAAeelu",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":532,"spans":533},"Since we are using the VimPlug plugin manager, let's follow the appropriate instructions to get it installed.",[],{"type":46,"text":535,"spans":536},"1. Insert the vim-markdown code into the dotfile:",[537],{"start":83,"end":94,"type":53},{"type":97,"url":539,"alt":540,"copyright":6,"dimensions":541,"id":544,"edit":545},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002Fe80ad9257fd618aa008f0430cd7a7910bfa7afa4_insert-vim-markdown-code.png?auto=compress,format","insert vim-markdown code",{"width":542,"height":543},1912,1252,"XZ7RjRAAACMAee6e",{"x":37,"y":37,"zoom":38,"background":105},{"type":46,"text":547,"spans":548},"2. Run the following commands in order:",[],{"type":241,"text":550,"spans":551},":w\n:source %\n:PlugInstall",[],{"type":46,"text":553,"spans":554},"After that, the vim-markdown plugin is all set!",[],{"type":46,"text":556,"spans":557},"If you want to keep adding more plugins, just repeat the 2 steps (with a different plugin of course) and they'll be installed in a snap.",[558],{"start":184,"end":559,"type":53},64,{"type":42,"text":561,"spans":562},"Conclusion",[],{"type":46,"text":564,"spans":565},"Hopefully, using Vim commands will feel like second-nature!",[566],{"start":165,"end":170,"type":51},{"type":46,"text":568,"spans":569},"After memorizing the keybindings up above, it will be enough to take advantage of the sheer amount of capabilities of what text editing can do.",[],{"type":46,"text":571,"spans":572},"Plus, you don't have to settle for the default theme.",[],{"type":46,"text":574,"spans":575},"Change it up a bit and you'll see what I mean.",[],{"type":46,"text":577,"spans":578},"It can replicate any other editor's theme that's out there and still use the same set of commands.",[],{"type":46,"text":580,"spans":581},"If you miss your previous editor but find Vim's keybindings hard to let go, then incorporating it is your best bet.",[582,583],{"start":356,"end":139,"type":51},{"start":584,"end":585,"type":121,"data":586},81,97,{"link_type":123,"url":587},"https:\u002F\u002Fmarketplace.visualstudio.com\u002Fitems?itemName=vscodevim.vim",{"type":46,"text":589,"spans":590},"Its portability is simply unmatched!",[],{"results":592,"page":38,"results_per_page":656,"results_size":656,"total_results_size":58,"total_pages":38},[593,616,636],{"id":594,"uid":595,"url":6,"type":7,"href":596,"tags":597,"first_publication_date":598,"last_publication_date":598,"slugs":599,"linked_documents":601,"lang":15,"alternate_languages":602,"data":603},"auzqGRIAACsAt55X","ubuntu-26-04-enable-fractional-scaling-on-wayland","https:\u002F\u002Fmarks-personal-website.cdn.prismic.io\u002Fapi\u002Fv2\u002Fdocuments\u002Fsearch?ref=auzrLRIAACcAt6BE&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22auzqGRIAACsAt55X%22%29+%5D%5D",[],"2026-11-05T20:46:37+0000",[600],"ubuntu-26.04-enable-fractional-scaling-on-wayland",[],[],{"image":604,"title":611},{"dimensions":605,"alt":6,"copyright":6,"url":608,"id":609,"edit":610},{"width":606,"height":607},1376,768,"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002FpVI5y1ileUlGp0ax_ubuntu26_04EnableFractionalScalingonWayland.jpeg?auto=format,compress","pVI5y1ileUlGp0ax",{"x":37,"y":37,"zoom":38,"background":105},[612],{"type":20,"text":613,"spans":614,"direction":615},"Ubuntu 26.04: Enable Fractional Scaling on Wayland",[],"ltr",{"id":617,"uid":618,"url":6,"type":7,"href":619,"tags":620,"first_publication_date":621,"last_publication_date":621,"slugs":622,"linked_documents":624,"lang":15,"alternate_languages":625,"data":626},"auzo2RIAAC0At5xZ","ubuntu-26.04-undo-apt-install-with-apt-history","https:\u002F\u002Fmarks-personal-website.cdn.prismic.io\u002Fapi\u002Fv2\u002Fdocuments\u002Fsearch?ref=auzrLRIAACcAt6BE&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22auzo2RIAAC0At5xZ%22%29+%5D%5D",[],"2026-11-05T20:40:46+0000",[623],"ubuntu-26.04-undo-an-apt-install-with-apt-history-undo",[],[],{"image":627,"title":632},{"dimensions":628,"alt":6,"copyright":6,"url":629,"id":630,"edit":631},{"width":606,"height":607},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002FqOqSwrMP0cjwe-66_Ubuntu26.04-UndoanAPTInstallwith%2522apthistory-undo%2522.jpg?auto=format,compress","qOqSwrMP0cjwe-66",{"x":37,"y":37,"zoom":38,"background":105},[633],{"type":20,"text":634,"spans":635,"direction":615},"Ubuntu 26.04: Undo an APT Install with \"apt history-undo\"",[],{"id":637,"uid":638,"url":6,"type":7,"href":639,"tags":640,"first_publication_date":641,"last_publication_date":641,"slugs":642,"linked_documents":644,"lang":15,"alternate_languages":645,"data":646},"auznGhIAACoAt5mB","ubuntu-26-04-enable-screen-time-limits","https:\u002F\u002Fmarks-personal-website.cdn.prismic.io\u002Fapi\u002Fv2\u002Fdocuments\u002Fsearch?ref=auzrLRIAACcAt6BE&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22auznGhIAACoAt5mB%22%29+%5D%5D",[],"2026-11-05T20:35:03+0000",[643],"ubuntu-26.04-enable-screen-time-limits-in-gnome",[],[],{"image":647,"title":652},{"dimensions":648,"alt":6,"copyright":6,"url":649,"id":650,"edit":651},{"width":606,"height":607},"https:\u002F\u002Fimages.prismic.io\u002Fmarks-personal-website\u002F2p8DjpWKS20G9Wse_Ubuntu26.04-EnableScreenTimeLimitsinGNOME.jpeg?auto=format,compress","2p8DjpWKS20G9Wse",{"x":37,"y":37,"zoom":38,"background":105},[653],{"type":20,"text":654,"spans":655,"direction":615},"Ubuntu 26.04: Enable Screen Time Limits in GNOME",[],3,1793911620235]