Compare commits

..

46 commits

Author SHA1 Message Date
8fe6760157
make the logo link to the homepage 2024-08-28 13:05:53 +10:00
dbf43952ea
highlight projects in sidebar on project pages 2024-08-28 13:02:20 +10:00
0e041aa4e7
fix scoop ui's title 2024-08-28 13:01:51 +10:00
12bf1b932c
fix ztgui's title 2024-08-28 13:01:27 +10:00
e89d666239
way more projects! 2024-08-28 12:44:41 +10:00
5c592aebd9
add install instructions to README 2024-08-28 12:17:33 +10:00
5cc3c1bf5f
update deps 2024-08-28 12:15:49 +10:00
6e058b53b5 workaround for debian's old ruby build 2024-05-04 09:14:02 +10:00
d1de15af29 minor corrections 2024-05-04 09:05:50 +10:00
3e17c8b59d the all-important word wrap commit 2024-05-04 09:05:36 +10:00
94ab2ba9f0 how long has this been missing?? 2024-05-04 08:59:54 +10:00
cd9bc7509e idk why user-scalable is no, it shouldn't be 2024-05-04 08:59:32 +10:00
e145ace1a6
update about page to link to fedi acct 2024-02-10 10:51:15 +10:00
a11f885557
update to latest jekyll 2024-02-09 21:56:48 +10:00
7b23f3c207
fix header image 2024-02-09 21:38:20 +10:00
95d2f7d2da
gem updates 2024-02-09 21:32:01 +10:00
9a4eb4555e
style changes 2024-02-09 21:31:54 +10:00
a0f3efb05a
bump age, fedi link 2024-02-09 21:30:46 +10:00
e3cf74d48c
sigh 2022-08-06 13:10:55 +10:00
bd2f2ba0ba
added c and zig 2022-08-06 13:10:39 +10:00
1806c17b83
removed an unintentional space from the word "DNS" 2021-12-04 21:05:51 +10:00
136ff0df88
bundler update 2021-11-26 03:01:46 +10:00
22d9a57ec6
a whole bunch of major style changes 2021-11-06 04:04:40 +10:00
c3e1adb2b6
minor changes, bundler update 2021-11-06 00:52:47 +10:00
66cb0475bf
css reformat 2021-10-16 16:39:38 +10:00
16278fc1cc
css reformat 2021-10-16 16:05:56 +10:00
3143462043
retro.html is now CSS free ;) 2021-10-16 16:04:23 +10:00
35d1242029
dark theme c: 2021-10-16 15:52:01 +10:00
8c6a2bdb07
css tweaks 2021-10-16 15:38:41 +10:00
d924cb47a7
jetbrains stuff 2021-10-16 00:01:42 +10:00
1e8b018341
css fixes, new "skills" page! 2021-10-16 00:01:20 +10:00
4fe83a6ae4
update deps 2021-10-16 00:01:09 +10:00
e533512486
minor fixups 2021-10-15 23:37:23 +10:00
433216db58
don't use a HTML template for cli.txt 0uo 2021-05-08 00:10:11 +10:00
e127389ac6
added missing plugin oops 2021-05-08 00:09:05 +10:00
dff4f4df20
added and removed some fields 2021-05-08 00:06:33 +10:00
e71823700a
added cli.txt from old site 2021-05-08 00:05:14 +10:00
c10e35ef86
fixed project pages 2021-05-02 20:06:32 +10:00
75f28446ac
fix underline colouring on chrome 2021-05-02 20:01:14 +10:00
e9987b24b0
the power of srcset... 2021-05-02 19:52:41 +10:00
519a2e9d98
get rid of that side-shadow nonsense at once!! 2021-05-02 19:42:37 +10:00
f8fd4bfc54
oops i wasn't serving the webp 2021-05-02 19:37:48 +10:00
510d37c710
enable ackee 2021-05-02 19:22:29 +10:00
8a05cf5ee4
remove fedi mention 2021-05-02 19:20:05 +10:00
ddb0008a7a
fix sidebar 2021-05-02 19:17:39 +10:00
f01b09460e
fix config oooooops 2021-05-02 19:15:56 +10:00
28 changed files with 342 additions and 106 deletions

2
.bundle/config Normal file
View file

@ -0,0 +1,2 @@
---
BUNDLE_PATH: "vendor/bundle"

1
.gitignore vendored
View file

@ -3,3 +3,4 @@ _site
.jekyll-cache .jekyll-cache
.jekyll-metadata .jekyll-metadata
vendor vendor
*.kate-swp

View file

@ -0,0 +1,46 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="GrazieInspection" enabled="false" level="TYPO" enabled_by_default="false" />
<inspection_tool class="PyAugmentAssignmentInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PyComparisonWithNoneInspection" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="PyCompatibilityInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ourVersions">
<value>
<list size="6">
<item index="0" class="java.lang.String" itemvalue="3.6" />
<item index="1" class="java.lang.String" itemvalue="3.7" />
<item index="2" class="java.lang.String" itemvalue="3.8" />
<item index="3" class="java.lang.String" itemvalue="3.9" />
<item index="4" class="java.lang.String" itemvalue="3.10" />
<item index="5" class="java.lang.String" itemvalue="3.10" />
</list>
</value>
</option>
</inspection_tool>
<inspection_tool class="PyInconsistentIndentationInspection" enabled="true" level="ERROR" enabled_by_default="true" />
<inspection_tool class="PyMissingTypeHintsInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PyPep8Inspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="E302" />
<option value="E305" />
<option value="E261" />
<option value="E128" />
<option value="E124" />
<option value="W191" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyUnresolvedReferencesInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ignoredIdentifiers">
<list>
<option value="mutagen.id3._frames.APIC.*" />
<option value="music_tools.note.Note" />
</list>
</option>
</inspection_tool>
<inspection_tool class="RedundantNotNullExtensionReceiverOfInline" enabled="true" level="INFORMATION" enabled_by_default="true" />
<inspection_tool class="RegExpRepeatedSpace" enabled="true" level="INFORMATION" enabled_by_default="true" />
</profile>
</component>

View file

@ -7,7 +7,7 @@ source "https://rubygems.org"
# #
# This will help ensure the proper Jekyll version is running. # This will help ensure the proper Jekyll version is running.
# Happy Jekylling! # Happy Jekylling!
gem "jekyll", "~> 4.2.0" gem "jekyll", "~> 4.3.3"
# This is the default theme for new Jekyll sites. You may change this to anything you like. # This is the default theme for new Jekyll sites. You may change this to anything you like.
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and # If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`. # uncomment the line below. To upgrade, run `bundle update github-pages`.
@ -20,12 +20,12 @@ end
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem # Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library. # and associated library.
install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do
gem "tzinfo", "~> 1.2" gem "tzinfo", "~> 2.0"
gem "tzinfo-data" gem "tzinfo-data"
end end
# Performance-booster for watching directories on Windows # Performance-booster for watching directories on Windows
gem "wdm", "~> 0.1.1", :install_if => Gem.win_platform? gem "wdm", "~> 0.1.1", :install_if => Gem.win_platform?
# fix for https://github.com/sass/sassc-ruby/issues/146
gem "webrick", "~> 1.7" gem "sassc", "< 2.2.0"

View file

@ -1,78 +1,87 @@
GEM GEM
remote: https://rubygems.org/ remote: https://rubygems.org/
specs: specs:
addressable (2.7.0) addressable (2.8.7)
public_suffix (>= 2.0.2, < 5.0) public_suffix (>= 2.0.2, < 7.0)
bigdecimal (3.1.8)
colorator (1.1.0) colorator (1.1.0)
concurrent-ruby (1.1.8) concurrent-ruby (1.3.4)
em-websocket (0.5.2) em-websocket (0.5.3)
eventmachine (>= 0.12.9) eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0) http_parser.rb (~> 0)
eventmachine (1.2.7) eventmachine (1.2.7)
ffi (1.15.0) ffi (1.17.0-x86_64-linux-gnu)
forwardable-extended (2.6.0) forwardable-extended (2.6.0)
http_parser.rb (0.6.0) google-protobuf (4.27.4-x86_64-linux)
i18n (1.8.10) bigdecimal
rake (>= 13)
http_parser.rb (0.8.0)
i18n (1.14.5)
concurrent-ruby (~> 1.0) concurrent-ruby (~> 1.0)
jekyll (4.2.0) jekyll (4.3.3)
addressable (~> 2.4) addressable (~> 2.4)
colorator (~> 1.0) colorator (~> 1.0)
em-websocket (~> 0.5) em-websocket (~> 0.5)
i18n (~> 1.0) i18n (~> 1.0)
jekyll-sass-converter (~> 2.0) jekyll-sass-converter (>= 2.0, < 4.0)
jekyll-watch (~> 2.0) jekyll-watch (~> 2.0)
kramdown (~> 2.3) kramdown (~> 2.3, >= 2.3.1)
kramdown-parser-gfm (~> 1.0) kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0) liquid (~> 4.0)
mercenary (~> 0.4.0) mercenary (>= 0.3.6, < 0.5)
pathutil (~> 0.9) pathutil (~> 0.9)
rouge (~> 3.0) rouge (>= 3.0, < 5.0)
safe_yaml (~> 1.0) safe_yaml (~> 1.0)
terminal-table (~> 2.0) terminal-table (>= 1.8, < 4.0)
jekyll-sass-converter (2.1.0) webrick (~> 1.7)
sassc (> 2.0.1, < 3.0) jekyll-sass-converter (3.0.0)
sass-embedded (~> 1.54)
jekyll-watch (2.2.1) jekyll-watch (2.2.1)
listen (~> 3.0) listen (~> 3.0)
kramdown (2.3.1) kramdown (2.4.0)
rexml rexml
kramdown-parser-gfm (1.1.0) kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0) kramdown (~> 2.0)
liquid (4.0.3) liquid (4.0.4)
listen (3.5.1) listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3) rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10) rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0) mercenary (0.4.0)
pathutil (0.16.2) pathutil (0.16.2)
forwardable-extended (~> 2.6) forwardable-extended (~> 2.6)
public_suffix (4.0.6) public_suffix (6.0.1)
rb-fsevent (0.10.4) rake (13.2.1)
rb-inotify (0.10.1) rb-fsevent (0.11.2)
rb-inotify (0.11.1)
ffi (~> 1.0) ffi (~> 1.0)
rexml (3.2.5) rexml (3.3.6)
rouge (3.26.0) strscan
rouge (4.3.0)
safe_yaml (1.0.5) safe_yaml (1.0.5)
sassc (2.4.0) sass-embedded (1.77.8-x86_64-linux-gnu)
google-protobuf (~> 4.26)
sassc (2.1.0-x86_64-linux)
ffi (~> 1.9) ffi (~> 1.9)
terminal-table (2.0.0) strscan (3.1.0)
unicode-display_width (~> 1.1, >= 1.1.1) terminal-table (3.0.2)
thread_safe (0.3.6) unicode-display_width (>= 1.1.1, < 3)
tzinfo (1.2.9) tzinfo (2.0.6)
thread_safe (~> 0.1) concurrent-ruby (~> 1.0)
tzinfo-data (1.2021.1) tzinfo-data (1.2024.1)
tzinfo (>= 1.0.0) tzinfo (>= 1.0.0)
unicode-display_width (1.7.0) unicode-display_width (2.5.0)
wdm (0.1.1) wdm (0.1.1)
webrick (1.7.0) webrick (1.8.1)
PLATFORMS PLATFORMS
x86_64-linux x86_64-linux
DEPENDENCIES DEPENDENCIES
jekyll (~> 4.2.0) jekyll (~> 4.3.3)
tzinfo (~> 1.2) sassc (< 2.2.0)
tzinfo (~> 2.0)
tzinfo-data tzinfo-data
wdm (~> 0.1.1) wdm (~> 0.1.1)
webrick (~> 1.7)
BUNDLED WITH BUNDLED WITH
2.2.16 2.4.10

View file

@ -3,21 +3,29 @@ lynnesbian.space
This is the Jekyll site directory for [lynnesbian.space](https://lynnesbian.space). I can't really see anyone getting This is the Jekyll site directory for [lynnesbian.space](https://lynnesbian.space). I can't really see anyone getting
much use out of the source for the website, but there's not really a reason *not* to publish it, so whatever. much use out of the source for the website, but there's not really a reason *not* to publish it, so whatever.
## Getting started
```bash
git clone https://git.bune.city/lynnesbian/lynnespace
cd lynnespace
gem install bundler
bundler install
```
## Licensing ## Licensing
This is gonna get complicated, but here goes: This is gonna get complicated, but here goes:
- The provided HTML, JavaScript, and CSS files are licensed under the Expat license (aka the "MIT license"). - The provided HTML, JavaScript, and CSS files are licensed under the Expat license (aka the "MIT license").
- `favicon.ico` and `favicon.png` are both CC-BY-SA. - `favicon.ico` and `favicon.png` are both CC-BY-SA.
- All files in the `/_data` and `/_projects` directories are CC-BY-SA. - All files in the `/_projects` directory are CC-BY-SA.
- All other files are Expat licensed. - All other files are Expat licensed.
- If files seem to be licensed under two licenses (my bad), assume Expat. - If files seem to be licensed under two licenses (my bad), assume Expat.
In other words: You can use the JavaScript, HTML, and CSS content of this website without attribution (although I would In other words: You can use the JavaScript, HTML, and CSS content of this website without attribution (although I would
prefer it if you did provide attribution). You can also do whatever you want with the files in `/_data` and prefer it if you did provide attribution). You can also do whatever you want with the files in `/_projects`, but you
`/_projects`, but you must provide attribution for these files, and any derivative works made with them must also be must provide attribution for these files, and any derivative works made with them must also be CC-BY-SA licensed.
CC-BY-SA licensed.
### Links to licenses used ### Links to licenses used
- [CC-BY-SA](https://creativecommons.org/licenses/by-sa/4.0/legalcode) - [CC-BY-SA](https://creativecommons.org/licenses/by-sa/4.0/legalcode)
- [Expat](https://spdx.org/licenses/MIT.html#licenseText) - [Expat](https://spdx.org/licenses/MIT.html#licenseText)

View file

@ -15,8 +15,8 @@ defaults:
collections: collections:
content: content:
output: true output: true
permalink: /:name permalink: /:name:output_ext
projects: projects:
output: true output: true
permalink: /:collection/:name permalink: /:collection/:name:output_ext

View file

@ -3,10 +3,11 @@ title: About
--- ---
{% include h.html level=2 content="What I do" %} {% include h.html level=2 content="What I do" %}
<p> <p>
I'm Lynne. My interests include creating free software, playing story-driven games, photography, and writing. My interests include creating and improving free software, learning all I can about computer science, playing
story-driven games, photography, and writing.
</p> </p>
<p> <p>
Most of what I do with computers is about helping people, whether that's through writing simple scripts to automate Much of what I do with computers is about helping people, whether that's through writing simple scripts to automate
things or writing software to make things more accessible. things or writing software to make things more accessible.
</p> </p>
<p> <p>
@ -15,18 +16,25 @@ title: About
contraptions and logic machines to accomplish tasks within the game. contraptions and logic machines to accomplish tasks within the game.
</p> </p>
<p> <p>
While making games and tools was (and is) enjoyable to me, what I want to do most is create software that helps The type of software I want to create most is that which helps people, whether it be through providing or improving
people - I find it by far my greatest motivator. on accessibility options, creating tools that aim to simplify complex tasks, or even writing documentation that
makes existing software easier to use - I find it by far my greatest motivator.
</p> </p>
<p> <p>
I don't really consider myself a <em>hardcore gamer</em>, but I do enjoy video games - usually those with a focus on I don't really consider myself a <em>hardcore gamer</em>, but I do enjoy video games - usually those with a focus on
creativity or story. I've tried to make a few games before, but never completed any outside of short little minigames creativity or story. I've tried to make a few games before, but never completed any outside of short little minigames
and TI-84 calculator toys. I'd like to make a few small games of my own, and I'm really interested in one day making and TI-84 calculator toys. I'd like to make a few small games of my own, and I'm really interested in one day making
mods for existing games to make them more accessible - lowering difficulty, removing epilepsy-triggering sequences, mods for existing games to make them more accessible - lowering difficulty, removing epilepsy-triggering sequences,
removing potentially phobia-inducing elements, etc. {% comment %} FOOTNOTE - why do so many games have spiders!!!! {% endcomment %} removing potentially phobia-inducing elements, and so on. {% comment %} FOOTNOTE - why do so many games have
spiders!!!! {% endcomment %}
</p> </p>
{% comment %} {% comment %}
{% include h.html level=3 content="Some things I've made" %} {% include h.html level=3 content="Some things I've made" %}
<p>
<a href="https://gitlab.com/Lynnesbian/fif">fif</a> is a tool to find and optionally correct files with misnamed
extensions. It's written in Rust, partially to teach myself the language, and partially because it's (in my
opinion) a more suitable language for a small CLI project like this than something like C# or Python.
</p>
<p> <p>
I've made a lot of software to help my wife Petra, but much of it is too specific to her needs to be useful on a I've made a lot of software to help my wife Petra, but much of it is too specific to her needs to be useful on a
greater scale, with perhaps a few exceptions, such as greater scale, with perhaps a few exceptions, such as
@ -43,26 +51,22 @@ title: About
{% include h.html level=2 content="What I use" %} {% include h.html level=2 content="What I use" %}
<p> <p>
All my computers and laptops run Linux, perhaps unsurprisingly. I mainly stick to All my computers and laptops run Linux, perhaps unsurprisingly. I mainly stick to
<a href="https://archlinux.org">Arch</a> and <a href="https://debian.org">Debian</a>. Every Android phone I've ever <a href="https://fedoraproject.org">Fedora</a> and <a href="https://debian.org">Debian</a>, although in the past I
used <a href="https://archlinux.org">Arch</a>. Up until my most recent one, every Android phone I've ever
owned (with the exception of <a href="https://www.gsmarena.com/huawei_u8150_ideos-3513.php">my very first</a>) ended owned (with the exception of <a href="https://www.gsmarena.com/huawei_u8150_ideos-3513.php">my very first</a>) ended
up running <a href="https://en.wikipedia.org/wiki/CyanogenMod">Cyanogenmod</a> or up running <a href="https://en.wikipedia.org/wiki/CyanogenMod">Cyanogenmod</a> or
<a href="https://lineageos.org/">LineageOS</a> at some point, usually soon after purchase. This includes my current <a href="https://lineageos.org/">LineageOS</a> at some point, usually soon after purchase. One UI finally won me
phone. over, and rooting phones is just too annoying now, with
<a href="https://developer.android.com/google/play/integrity">Play Integrity</a> (formerly SafetyNet) and all that.
</p> </p>
<p> <p>
I avoid proprietary and/or closed software wherever I can without hugely inconveniencing myself. The vast majority of I consider myself an advocate for free and open source software, and all of my existing projects are licensed under
the software on my computer(s) is free and open source. I am strongly opposed to almost all forms of copyleft or permissive licences.
<a href="https://en.wikipedia.org/wiki/Digital_rights_management">DRM</a>, and either avoid buying media with it, or
remove it after purchase. For example, I buy all of my music from <a href="https://bandcamp.com/">Bandcamp</a> and
download the <a href="https://en.wikipedia.org/wiki/Ogg_Vorbis">OGG</a> version of the albums. I do this for both
ideological/philosophical and practical reasons.
</p> </p>
<p> <p>
I used to use social media (the <a href="https://en.wikipedia.org/wiki/Fediverse">Fediverse</a>, specifically) a fair I'm fairly active on the Fediverse, and I self-host Mastodon. You can follow me on
amount, but I've since moved away from all forms of social media besides reddit (where I never post). <a rel="me" href="https://fedi.lynnesbian.space/@lynnesbian">my account at fedi.lynnesbian.space</a>!
</p> </p>
<p> <p>
Most of my programming is done in <a href="https://rust-lang.org/">Rust</a> or <a href="https://python.org">Python</a>. I'm also somewhat familiar with For info on what programming languages I tend to use, see <a href="skills.html">my skills page</a>.
<a href="https://docs.microsoft.com/dotnet/csharp">C#</a> and
<a href="https://wikipedia.org/wiki/JavaScript">JavaScript</a>.
</p> </p>

View file

@ -1,5 +1,7 @@
--- ---
title: Contact title: Contact
--- ---
I can by reached <a href="mailto:lynne@bune.city">by email</a>. If you find any bugs or issues with my software, feel <p>
free to open an issue on the respective repository or email me. I can by reached <a href="mailto:lynne@bune.city">by email</a>. If you find any bugs or issues with my software, feel
free to open an issue on the respective repository or email me.
</p>

View file

@ -3,8 +3,9 @@ title: Home
custom_heading: true custom_heading: true
--- ---
<picture id="bune"> <picture id="bune">
<source type="image/webp" srcset="/assets/img/bune.webp"> <source type="image/webp" srcset="/assets/img/bune-smol.webp 1x, /assets/img/bune.webp 2x">
<img id="bune" src="/assets/img/bune.png" alt="A drawing of a rabbit with brown-tipped ears sniffing the air excitedly!" title="" style=""> <img id="bune-img" src="/assets/img/bune.png" alt="A drawing of a rabbit with brown-tipped ears sniffing the air
excitedly!" title="">
</picture> </picture>
{% include h.html level=1 content="Lynnesbian dot Space" %} {% include h.html level=1 content="Lynnesbian dot Space" %}
@ -16,12 +17,17 @@ custom_heading: true
{% include h.html level=2 content="Quick Links" %} {% include h.html level=2 content="Quick Links" %}
<p> <p>
<a href="https://bune.city/">My blog</a> is updated very infrequently, and focuses mostly on technology and/or games. I'm on the Fediverse! Follow me:
<a rel="me" href="https://fedi.lynnesbian.space/@lynnesbian">@lynnesbian@fedi.lynnesbian.space</a>
</p>
<p>
<a href="https://bune.city/">My abandoned blog</a> updated very infrequently, and focused mostly on technology and/or
games.
</p> </p>
<p> <p>
My <a href="https://keybase.io/lynnesbian/pgp_keys.asc">public PGP key</a> is available on Keybase. I've proven My <a href="https://keybase.io/lynnesbian/pgp_keys.asc">public PGP key</a> is available on Keybase. I've proven
ownership of the lynnesbian Keybase account via ownership of the lynnesbian Keybase account via
<a href="https://keybase.io/lynnesbian/sigchain#ad0cb53b48a917df3c369f64150672fc86be8bd946850269b81d25fd068626d30f">DNS</a>. <a href="//keybase.io/lynnesbian/sigchain#ad0cb53b48a917df3c369f64150672fc86be8bd946850269b81d25fd068626d30f">DNS</a>.
</p> </p>
<p> <p>
I host a few small <a href="https://apt.bune.city">apt repository mirrors</a> on this server, along with I host a few small <a href="https://apt.bune.city">apt repository mirrors</a> on this server, along with
@ -29,4 +35,4 @@ custom_heading: true
</p> </p>
<p> <p>
I live in Queensland, Australia, meaning that my timezone is AEST, or UTC+1000. I live in Queensland, Australia, meaning that my timezone is AEST, or UTC+1000.
</p> </p>

View file

@ -9,7 +9,7 @@ title: Projects
{% assign projects = site.projects | sort:"order" %} {% assign projects = site.projects | sort:"order" %}
{% for project in projects %} {% for project in projects %}
<div class="project"> <div class="project">
<h2>{{ project.name }}</h2> <h2>{{ project.name }} <span class="subtle"><em>{{ project.language }}</em></span></h2>
<p> <p>
{{ project.description }} {{ project.description }}
</p> </p>
@ -19,4 +19,4 @@ title: Projects
</div> </div>
</div> </div>
{% endfor %} {% endfor %}
</div> </div>

View file

@ -53,7 +53,7 @@ layout: none
</TD> </TD>
<TD ID=" MAIN"> <TD ID=" MAIN">
<H2>Who?</H2> <H2>Who?</H2>
My name is Lynne, a twenty-two year old woman living in Australia (the land down under!) My name is Lynne, a twenty-five year old woman living in Australia (the land down under!)
<BR /> <BR />
<BR /> <BR />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
@ -106,14 +106,8 @@ layout: none
that I that I
sound paranoid, but in my opinion, it's better safe than sorry. sound paranoid, but in my opinion, it's better safe than sorry.
<H2>Where?</H2> <H2>Where?</H2>
You won't find me on centralised blogging websites. You can, however, find me on the Fediverse - an You won't find me on any data-slurping "social media" websites. Drop me a line at
open <A HREF='mailto:lynne@bune.city'>lynne@bune.city</A> if you need to get in touch.
and federated social networking platform that allows for messages to flow freely from computer to
computer
through centralised servers ("instances") - without relying on a single point of failure. Drop me a
line at <A HREF='@lynnesbian@fedi.lynnesbian.space'>@lynnesbian@fedi.lynnesbian.space</A>, or if
you're more
old-school, you can email me at <A HREF='mailto:lynne@bune.city'>lynne@bune.city</A>.
<H2>When?</H2> <H2>When?</H2>
Until the end of cyber freedom as we know it, the webmasters, webmistresses and webmakers of the Until the end of cyber freedom as we know it, the webmasters, webmistresses and webmakers of the
@ -158,4 +152,4 @@ layout: none
</BODY> </BODY>
</HTML> </HTML>

32
_content/skills.html Normal file
View file

@ -0,0 +1,32 @@
---
title: Skills
---
{% include h.html level=2 content="Languages" %}
I'm most comfortable with...
<ul>
<li><a href="https://rust-lang.org/">Rust</a> - my preferred language, and my default for new CLI/TUI projects</li>
<li><a href="https://python.org">Python</a> - my go-to scripting/glue language</li>
<li><a href="https://docs.microsoft.com/dotnet/csharp">C#</a> - my usual pick for GUI projects</li>
</ul>
I'm fairly capable with...
<ul>
<li><a href="https://wikipedia.org/wiki/JavaScript">JavaScript</a></li>
<li><a href="https://wikipedia.org/wiki/HTML">HTML</a>/<a href="https://wikipedia.org/wiki/CSS">CSS</a></li>
<li><a href="https://www.gnu.org/software/bash/manual/bash.html">Bash</a></li>
</ul>
I'm currently learning...
<ul>
<li><a href="https://isocpp.org">C++</a> - while I much prefer Rust, C++ has a far larger established base, and
learning either it or C (preferably both) is near-essential for systems programming, particularly when working
with Linux internals</li>
<li><a href="https://en.wikipedia.org/wiki/C_(programming_language)">C</a> - a very useful language for both
working with established codebases and for writing software for small, low-power devices, such as in the context
of embedded hardware.</li>
<li><a href="https://kotlinlang.org">Kotlin</a> - my personal favourite of the various JVM languages. Java is
widespread in many industries, and Kotlin provides near-seamless Java interop. Knowing at least one JVM
language should be very helpful for integrating with existing established codebases.</li>
<li><a href="https://ziglang.org">Zig</a> - Zig's alluring promise of a better C captured my attention, and I quite
enjoy its <tt>comptime</tt> paradigm, ease of configuring allocators, and philosophy around error handling.</li>
</ul>

View file

@ -3,12 +3,12 @@
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"> <meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="/assets/style.css"> <link rel="stylesheet" type="text/css" href="/assets/style.css">
<link rel="stylesheet" type="text/css" href="/assets/fonts/fonts.css"> <link rel="stylesheet" type="text/css" href="/assets/fonts/fonts.css">
<link rel="shortcut icon" href="/assets/img/favicon.png"> <link rel="shortcut icon" href="/assets/img/favicon.png">
<script src='/assets/script.js'></script> <script src='/assets/script.js'></script>
{% comment %}<script async src="https://ackee.lynnesbian.space/script.js" data-ackee-server="https://ackee.lynnesbian.space" data-ackee-domain-id="f0217e7d-ec2a-4a9b-baf3-d2d2215810ba"></script>{% endcomment %} <script async src="https://ackee.lynnesbian.space/script.js" data-ackee-server="https://ackee.lynnesbian.space" data-ackee-domain-id="f0217e7d-ec2a-4a9b-baf3-d2d2215810ba"></script>
<title>{{ page.title | default: "lynnesbian dot space" }}</title> <title>{{ page.title | default: "lynnesbian dot space" }}</title>
<meta property="og:title" content="{{ page.title | default: 'Henlo!' }}"> <meta property="og:title" content="{{ page.title | default: 'Henlo!' }}">
<meta property="og:site_name" content="lynnesbian dot space"> <meta property="og:site_name" content="lynnesbian dot space">
@ -21,20 +21,22 @@
<body> <body>
<header> <header>
<section id="header-content"> <section id="header-content">
<picture id="logo"> <a href="/">
<source type="image/webp" srcset="/assets/img/lynnesoft-centred.png"> <picture id="logo">
<img id="logo" <source type="image/webp" srcset="/assets/img/lynnesoft-centred.webp">
src="/assets/img/lynnesoft-centred.png" <img id="logo"
alt="A cyan-purple parallelogram with an outline of the letter L in its bottom-left corner." src="/assets/img/lynnesoft-centred.png"
height="442" alt="A cyan-purple parallelogram with an outline of the letter L in its bottom-left corner."
width="607"> height="442"
</picture> width="607">
</picture>
</a>
<nav> <nav>
<a href='/' {%- if page.title == "Home" %} class='current'{% endif -%}>Home</a> <a href='/' {%- if page.title == "Home" %} class='current'{% endif -%}>Home</a>
{%- for html_page in site.content -%} {%- for html_page in site.content -%}
{%- unless html_page.url == '/index' -%} {%- unless html_page.title == 'Home' -%}
<a href='{{ html_page.url }}' {%- if page.title == html_page.title %} class='current'{% endif -%}> <a href='{{ html_page.url }}' {%- if page.title == html_page.title or layout.sidebar_title == html_page.title %} class='current'{% endif -%}>
{{ html_page.title }} {{ html_page.title }}
</a> </a>
{%- endunless -%} {%- endunless -%}

View file

@ -1,11 +1,15 @@
--- ---
layout: default layout: default
sidebar_title: Projects
--- ---
{% comment %}<h1>{{ page.name }}</h1>{% endcomment %}
<div class='subheading-links'> <div class='subheading-links'>
{% if page.source %}<a href='{{ project.source }}'>Source code</a>{% endif %} {% if page.source %}<a href='{{ page.source }}'>Source code</a>{% endif %}
{% if page.website %}<a href='{{ project.website }}'>Website</a>{% endif %} {% if page.website %}<a href='{{ page.website }}'>Website</a>{% endif %}
</div> </div>
<div id="project-language">Written in {{ page.language }}</div>
<p>{{ page.description }}</p> <p>{{ page.description }}</p>
{{ content | rstrip | default: "There's nothing here yet." }} {{ content | rstrip | default: "There's nothing here yet." }}
<a href="/projects.html">Back to all projects</a> {% if page.image %}
<img class="project-image" alt="A screenshot of {{ page.name }}." src="{{ page.image }}" />
{% endif %}
<a href="/projects.html">Back to all projects</a>

38
_plugins/extensions.rb Normal file
View file

@ -0,0 +1,38 @@
require "liquid"
require "jekyll"
module Jekyll
module LynnesbianDotSpaceFilters
def ansi_colour(code)
"\u001b[38;5;#{code}m"
end
def ansi_bg(code)
"\u001b[48;5;#{code}m"
end
end
class AnsiResetTag < Liquid::Tag
def render(context)
"\u001b[0m"
end
end
class AnsiBoldTag < Liquid::Tag
def render(context)
"\u001b[1m"
end
end
class AnsiUnderlineTag < Liquid::Tag
def render(context)
"\u001b[4m"
end
end
end
Liquid::Template.register_filter(Jekyll::LynnesbianDotSpaceFilters)
Liquid::Template.register_tag('ansi_reset', Jekyll::AnsiResetTag)
Liquid::Template.register_tag('ansi_bold', Jekyll::AnsiBoldTag)
Liquid::Template.register_tag('ansi_underline', Jekyll::AnsiUnderlineTag)

View file

@ -3,6 +3,6 @@ name: BuyPeeb
description: BuyPeeb is a simple program that allows you to track auctions on Yahoo Auctions Japan. description: BuyPeeb is a simple program that allows you to track auctions on Yahoo Auctions Japan.
source: https://git.bune.city/lynnesbian/buypeeb-cs source: https://git.bune.city/lynnesbian/buypeeb-cs
language: C# language: C#
order: "02" order: "05"
--- ---
I made it for my wife Petra some time ago, and I haven't really been working on or updating it. I made it for my wife Petra some time ago, and I haven't really been working on or updating it.

View file

@ -4,7 +4,8 @@ title: fif
description: fif is a command-line tool for detecting and optionally correcting files with incorrect extensions. description: fif is a command-line tool for detecting and optionally correcting files with incorrect extensions.
source: https://gitlab.com/Lynnesbian/fif source: https://gitlab.com/Lynnesbian/fif
language: Rust language: Rust
order: "01" order: "04"
image: /assets/img/projects/fif.png
--- ---
It's cross-platform, multi-threaded, and can output its findings in a variety of formats, such as PowerShell and Bourne It's cross-platform, multi-threaded, and can output its findings in a variety of formats, such as PowerShell and Bourne
Shell scripts. Shell scripts.

9
_projects/scoop_ui.md Normal file
View file

@ -0,0 +1,9 @@
---
name: Scoop UI
title: Scoop UI
description: Scoop UI is a graphical frontend to Scoop.
source: https://gitlab.com/Lynnesbian/scoop-ui
language: Rust
order: "02"
---
It uses the egui framework and has a much faster search feature than Scoop's own native one.

9
_projects/smallgoo.md Normal file
View file

@ -0,0 +1,9 @@
---
name: Smallgoo
description: Smallgoo is a GUI frontend to various image optimisers.
source: https://gitlab.com/Lynnesbian/smallgoo
language: C++
order: "03"
image: /assets/img/projects/smallgoo.png
---
It compresses files in parallel and supports various configuration options.

10
_projects/ztgui.md Normal file
View file

@ -0,0 +1,10 @@
---
name: ZtGui
title: ZtGui
description: ZtGui is a cross-platform graphical frontend for managing ZeroTier networks.
source: https://gitlab.com/Lynnesbian/ztgui
language: Rust
order: "01"
image: /assets/img/projects/ztgui.png
---
It provides a much friendlier interface for managing networks than the default command-line interface.

View file

@ -3,6 +3,7 @@
font-family: 'Roboto'; font-family: 'Roboto';
font-style: normal; font-style: normal;
font-weight: 100; font-weight: 100;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/roboto-v20-latin-100.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/roboto-v20-latin-100.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-100.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/roboto-v20-latin-100.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -13,6 +14,7 @@
font-family: 'Roboto'; font-family: 'Roboto';
font-style: italic; font-style: italic;
font-weight: 100; font-weight: 100;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/roboto-v20-latin-100italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/roboto-v20-latin-100italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-100italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/roboto-v20-latin-100italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -23,6 +25,7 @@
font-family: 'Roboto'; font-family: 'Roboto';
font-style: normal; font-style: normal;
font-weight: 400; font-weight: 400;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/roboto-v20-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/roboto-v20-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/roboto-v20-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -33,6 +36,7 @@
font-family: 'Roboto'; font-family: 'Roboto';
font-style: italic; font-style: italic;
font-weight: 400; font-weight: 400;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/roboto-v20-latin-italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/roboto-v20-latin-italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/roboto-v20-latin-italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -43,6 +47,7 @@
font-family: 'Roboto'; font-family: 'Roboto';
font-style: italic; font-style: italic;
font-weight: 500; font-weight: 500;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/roboto-v20-latin-500italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/roboto-v20-latin-500italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-500italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/roboto-v20-latin-500italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -53,6 +58,7 @@
font-family: 'Roboto'; font-family: 'Roboto';
font-style: normal; font-style: normal;
font-weight: 500; font-weight: 500;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/roboto-v20-latin-500.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/roboto-v20-latin-500.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-500.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/roboto-v20-latin-500.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -63,6 +69,7 @@
font-family: 'Open Sans'; font-family: 'Open Sans';
font-style: normal; font-style: normal;
font-weight: 300; font-weight: 300;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/open-sans-v18-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/open-sans-v18-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/open-sans-v18-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -73,6 +80,7 @@
font-family: 'Open Sans'; font-family: 'Open Sans';
font-style: italic; font-style: italic;
font-weight: 300; font-weight: 300;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/open-sans-v18-latin-300italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/open-sans-v18-latin-300italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-300italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/open-sans-v18-latin-300italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -83,6 +91,7 @@
font-family: 'Open Sans'; font-family: 'Open Sans';
font-style: normal; font-style: normal;
font-weight: 400; font-weight: 400;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/open-sans-v18-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/open-sans-v18-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/open-sans-v18-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -93,6 +102,7 @@
font-family: 'Open Sans'; font-family: 'Open Sans';
font-style: normal; font-style: normal;
font-weight: 600; font-weight: 600;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/open-sans-v18-latin-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/open-sans-v18-latin-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/open-sans-v18-latin-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -103,6 +113,7 @@
font-family: 'Open Sans'; font-family: 'Open Sans';
font-style: italic; font-style: italic;
font-weight: 700; font-weight: 700;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/open-sans-v18-latin-700italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/open-sans-v18-latin-700italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-700italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/open-sans-v18-latin-700italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -113,6 +124,7 @@
font-family: 'Open Sans'; font-family: 'Open Sans';
font-style: normal; font-style: normal;
font-weight: 700; font-weight: 700;
font-display: swap;
src: local(''), src: local(''),
url('/assets/fonts/open-sans-v18-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/fonts/open-sans-v18-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('/assets/fonts/open-sans-v18-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */

BIN
assets/img/bune-smol.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
assets/img/projects/fif.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View file

@ -27,6 +27,9 @@ h1, h2, h3 {
h1 { h1 {
font-size: 3em; font-size: 3em;
text-align: center; text-align: center;
}
main article h1 a {
/* needed for chrome */
/*noinspection CssInvalidPropertyValue*/ /*noinspection CssInvalidPropertyValue*/
text-decoration: underline mediumpurple dotted 5px; text-decoration: underline mediumpurple dotted 5px;
} }
@ -67,6 +70,10 @@ main article a:hover {
text-decoration-color: unset; text-decoration-color: unset;
} }
.subtle {
color: gray;
}
p { p {
line-height: 1.5em; line-height: 1.5em;
} }
@ -92,6 +99,7 @@ header::after {
z-index: -1; z-index: -1;
/*noinspection CssInvalidFunction*/ /*noinspection CssInvalidFunction*/
background: linear-gradient(to bottom, #333, #333 10%, 70%, transparent), background: linear-gradient(to bottom, #333, #333 10%, 70%, transparent),
/* image("/assets/img/background.webp", "/assets/img/background.jpeg") no-repeat bottom center/cover, */
url("/assets/img/background.jpeg") no-repeat bottom center/cover, url("/assets/img/background.jpeg") no-repeat bottom center/cover,
#333; #333;
filter: blur(5px) saturate(75%); filter: blur(5px) saturate(75%);
@ -158,7 +166,7 @@ nav a.current::before {
margin: 30px auto 50px auto; margin: 30px auto 50px auto;
} }
#bune { #bune, #bune-img {
height: max(200px, 10vh); height: max(200px, 10vh);
display: block; display: block;
margin: 50px auto 0; margin: 50px auto 0;
@ -181,6 +189,19 @@ nav a.current::before {
font-style: italic; font-style: italic;
} }
.subheading-links {
text-align: center;
}
.project-image {
max-height: 500px;
display: block;
margin: 0 auto;
}
#project-language {
text-align: center;
margin-top: 0.5em;
}
/* mobile tweaks */ /* mobile tweaks */
@media only screen and (min-device-width : 320px) and (max-device-width : 480px) { @media only screen and (min-device-width : 320px) and (max-device-width : 480px) {
main { main {
@ -201,6 +222,7 @@ nav a.current::before {
position: fixed; position: fixed;
left: -100vw; left: -100vw;
width: 100vw; width: 100vw;
overflow: hidden;
z-index: 3; z-index: 3;
} }
header.active { header.active {
@ -210,4 +232,4 @@ nav a.current::before {
display: inline-block; display: inline-block;
touch-action: manipulation; touch-action: manipulation;
} }
} }

25
cli.txt Normal file
View file

@ -0,0 +1,25 @@
---
layout: none
---
{%- assign cyan = 87 | ansi_colour -%}
{%- assign purple = 99 | ansi_colour -%}
{{ purple }}{{ 231 | ansi_bg }}{% ansi_bold %}▞▚▞▚▞▚▖ ▂▃▄▅▆▇█{{99 | ansi_bg }}{{ 231 | ansi_colour }} lynnesbian dot space {{ purple }}{{ 231 | ansi_bg }}█▇▆▅▄▃▂ ▗▞▚▞▚▞▚{% ansi_reset %}
{{ purple }} {% ansi_underline %} {{ cyan }} {% ansi_reset %}
{{ purple }} {{ cyan }} {% ansi_reset %}
{{ purple }} {{ cyan }} {% ansi_reset %}
{{ cyan }} {% ansi_reset %}
{{ cyan }} {% ansi_underline %} {% ansi_reset %}{{ cyan }}{% ansi_reset %}
{{ cyan }} {% ansi_underline %} {% ansi_reset %}{{ cyan }}{% ansi_reset %}
{{ 81 | ansi_bg }} {{ 213 | ansi_bg }} {{ 231 | ansi_bg }} {{ 213 | ansi_bg }} {{ 81 | ansi_bg }} {% ansi_reset %}
╭──────────────────────────────────────┬───────────────────────────────────────╮
│ Name │ Lynne, aka Lynnesbian │
│ Timezone │ Australia/Brisbane - AEST - UTC+1000 │
│ What I do │ Free and open source software │
│ Languages │ Rust, Python, C#, JavaScript... │
│ Email │ @lynne@bune.city │
│ Blog │ https://bune.city │
│ Be gay │ Do crimes │
╰──────────────────────────────────────┴───────────────────────────────────────╯
{{ 81 | ansi_bg }} {{ 213 | ansi_bg }} {{ 231 | ansi_bg }} {{ 213 | ansi_bg }} {{ 81 | ansi_bg }} {% ansi_reset %}
{{ purple }}{{ 231 | ansi_bg }}{% ansi_bold %}░▒▓▒░▒▓▒░▒▓▒░▒▓▒░ Source code: https://l.bune.city/clisrc ░▒▓▒░▒▓▒░▒▓▒░▒▓▒░▓▒░{% ansi_reset %}