[-] [email protected] 1 points 3 weeks ago

https://mwmbl.org/ has a custom index of user-submitted domains and user-curated results but it's not suitable for daily use yet.

[-] [email protected] 2 points 1 month ago

You can also put this in ~/.config/xkb/symbols/us-custom (create the parent directories if necessary) and set the environment variable XKB_DEFAULT_LAYOUT=us-custom. This works in most Wayland compositors, including river and niri. For Hyprland, you can add this to your config file:

input {
	kb_layout = us-custom
}

If you use GNOME, run

gsettings set org.gnome.desktop.input-sources mru-sources "[('xkb', 'us-custom')]"
gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us-custom')]"

and restart GNOME.


This is my keyboard layout (I explained some bits of it here):

default partial alphanumeric_keys
xkb_symbols "basic" {
include "us(de_se_fi)" // Umlauts (ä, ö, ü) and €

include "level5(rctrl_switch)"

key.type[Group1] = "EIGHT_LEVEL";

// Number row
key <TLDE> {[ grave,      asciitilde,  dead_grave,           dead_tilde                                       ]};
key <AE01> {[ 1,          exclam,      onesuperior,          U2081                                            ]}; // x₁
key <AE02> {[ 2,          at,          twosuperior,          U2082                                            ]}; // x₂
key <AE03> {[ 3,          numbersign,  threesuperior,        U2083                                            ]}; // x₃
key <AE06> {[ 6,          asciicircum, dead_circumflex,      dead_caron                                       ]};
key <AE08> {[ 8,          asterisk,    enfilledcircbullet,   U22C5,               infinity                    ]}; // dot operator
key <AE10> {[ 0,          parenright,  NoSymbol,             NoSymbol                                         ]};
key <AE11> {[ minus,      underscore,  endash,               emdash,              U207B                       ]}; // x⁻
key <AE12> {[ equal,      plus,        notequal,             approxeq                                         ]};

// Top row
key <AD01> {[ q,          Q,           NoSymbol,             U211A,               NoSymbol,      NoSymbol     ]}; // ℚ
key <AD02> {[ w,          W,           NoSymbol,             NoSymbol,            Greek_omega,   Greek_OMEGA  ]};
key <AD03> {[ e,          E,           NoSymbol,             NoSymbol,            Greek_epsilon, U2203        ]}; // ∃
key <AD04> {[ r,          R,           NoSymbol,             U211D,               Greek_rho,     U03F1        ]}; // ℝ ϱ
key <AD05> {[ t,          T,           U03D1,                Greek_tau,           Greek_theta,   Greek_THETA  ]}; // ϑ
key <AD08> {[ i,          I,           U21d2,                U21d4,               Greek_iota,    integral     ]}; // ⇒ ⇔
key <AD09> {[ o,          O,           NoSymbol,             NoSymbol,            Greek_omega,   Greek_OMEGA  ]};
key <AD10> {[ p,          P,           section,              paragraph,           Greek_pi,      Greek_PI     ]};

// Home row
key <AC01> {[ a,          A,           NoSymbol,             NoSymbol,            Greek_alpha,   U2200        ]}; // ∀
key <AC02> {[ s,          S,           NoSymbol,             NoSymbol,            Greek_sigma,   Greek_SIGMA  ]};
key <AC03> {[ d,          D,           NoSymbol,             NoSymbol,            Greek_delta,   Greek_DELTA  ]};
key <AC04> {[ f,          F,           NoSymbol,             NoSymbol,            Greek_phi,     Greek_PHI    ]};
key <AC05> {[ g,          G,           degree,               NoSymbol,            Greek_gamma,   Greek_GAMMA  ]};
key <AC06> {[ h,          H,           U2190,                NoSymbol,            Greek_eta,     U2225        ]}; // ← ∥
key <AC07> {[ j,          J,           U2193,                NoSymbol,            NoSymbol,      NoSymbol     ]}; // ↓
key <AC08> {[ k,          K,           U2191,                NoSymbol,            Greek_kappa,   U03F0        ]}; // ↑ ϰ
key <AC09> {[ l,          L,           U2192,                NoSymbol,            Greek_lambda,  Greek_LAMBDA ]}; // →
key <AC10> {[ semicolon,  colon,       dead_diaeresis,       NoSymbol,            NoSymbol,      NoSymbol     ]};
key <AC11> {[ apostrophe, quotedbl,    rightsinglequotemark, NoSymbol,            NoSymbol,      NoSymbol     ]};
key <AC12> {[ backslash,  bar,         U2500,                U2502,               NoSymbol,      NoSymbol     ]}; // box drawing

// Bottom row
key <AB01> {[ z,          Z,           NoSymbol,             U2124,               Greek_zeta,    U2220        ]}; // ℤ ∠
key <AB02> {[ x,          X,           multiply,             NoSymbol,            Greek_xi,      Greek_XI     ]};
key <AB03> {[ c,          C,           NoSymbol,             U2102,               Greek_chi,     copyright    ]}; // ℂ
key <AB04> {[ v,          V,           doublelowquotemark,   singlelowquotemark,  Greek_psi,     Greek_PSI    ]};
key <AB05> {[ b,          B,           leftdoublequotemark,  leftsinglequotemark, Greek_beta,    NoSymbol     ]};
key <AB06> {[ n,          N,           rightdoublequotemark, rightsinglequotemark,Greek_nu,      U2115        ]}; // ℕ
key <AB07> {[ m,          M,           U2212,                plusminus,           Greek_mu,      NoSymbol     ]}; // minus
key <AB08> {[ comma,      less,        dead_cedilla,         NoSymbol,            U27e8,         NoSymbol     ]}; // ⟨
key <AB09> {[ period,     greater,     ellipsis,             dead_abovedot,       U27e9,         NoSymbol     ]}; // ⟩
key <AB10> {[ slash,      question,    division,             questiondown,        NoSymbol,      NoSymbol     ]};
};

GNOME Settings shows a visual preview of the first four layers:

See also this writeup by Leon Plickat.

[-] [email protected] 0 points 2 years ago

Thanks, I was confused because I thought "not supporting Taiwan independence" means being fine with China annexing Taiwan. In both versions of the readout, Biden wants to keep the status quo in Cross-Strait relations, but this is phrased differently in each readout.

[-] [email protected] 0 points 2 years ago

It's good that China and the US keep up the communication. However, I would like to see an US version of this: Did Biden really “reiterated that the one-China policy of the US has not changed and will not change, and that the US does not support ‘Taiwan independence’.”?

[-] [email protected] 0 points 3 years ago

You guys are overreacting. DDG said they would only down-rank sites associated with Russian disinformation. It's normal for search engines to downrank low-quality sites such as SEO spam.

1
submitted 4 years ago by [email protected] to c/[email protected]

Eye-opening video which explains Nintendo’s new design philosophy by comparing Origami King, Breath of the Wild, and Odyssey to older Nintendo games and similar games from other publishers.

The title sounds more negative than the video actually is.

1
submitted 4 years ago by [email protected] to c/[email protected]

Video in which Matt Parker explains Benford's Law and why it cannot be applied to elections

1
Linux Command Library (linuxcommandlibrary.com)
submitted 4 years ago by [email protected] to c/[email protected]

Impressive resource

1
Bash one-liner challenge (cmdchallenge.com)
submitted 4 years ago by [email protected] to c/[email protected]

Solve exercises by writing Bash one-liners. The server actually runs your commands and checks whether the output is correct.

If you click on View Solutions, the correct commands other people entered are sorted by character count. So if you want, you can take the optional code golfing challenge.

I gained some knowledge from solving the challenges and looking at the solutions. Mostly you will use find and grep.

1
submitted 5 years ago by [email protected] to c/[email protected]
1
submitted 5 years ago by [email protected] to c/[email protected]
2
submitted 5 years ago* (last edited 4 years ago) by [email protected] to c/[email protected]

I use a German keyboard but switched to the QWERTY layout to input programming symbols more easily. I still want to be able to type German umlauts, though. My keyboard also has a alt gr key that I want to put to use. So I created the file ~/.xkb/symbols/us-custom with the following contents:

default partial alphanumeric_keys
xkb_symbols "basic" {
	// Umlauts (ä, ö, ü) and €
	include "us(de_se_fi)"

	name[Group1] = "US layout plus some Unicode symbols using altgr combinations";
	// <AC06> means: middle row, 6th key on the board from the left

	// Unicode arrows (←, ↓, ↑, →)
	key <AC06> { [ h, H, U2190 ] };
	key <AC07> { [ j, J, U2193 ] };
	key <AC08> { [ k, K, U2191 ] };
	key <AC09> { [ l, L, U2192 ] };

	// Typographic punctuation
	key <AE11> { [      minus, underscore,   endash,       emdash ] };
	key <AB09> { [     period,    greater, ellipsis               ] };
	key <AB10> { [      slash,   question, division, questiondown ] };
	key <AE08> { [          8,   asterisk,        8,     multiply ] };
	key <AC11> { [ apostrophe,   quotedbl, rightsinglequotemark   ] };

	// Quotes
	key <AB02> { [ x, X,       guillemotright,            0x100203a ] };
	key <AB03> { [ c, C,        guillemotleft,            0x1002039 ] };
	key <AB04> { [ v, V,   doublelowquotemark,   singlelowquotemark ] };
	key <AB05> { [ b, B,  leftdoublequotemark,  leftsinglequotemark ] };
	key <AB06> { [ n, N, rightdoublequotemark, rightsinglequotemark ] };
};

In line 4 I included the de_se_fi section of /usr/share/X11/xkb/symbols/us. This has the same effect as putting the following into my custom layout:

include "us(basic)"
include "eurosign(e)"

key <AC01> {[ a,          A,          adiaeresis, Adiaeresis ]};
key <AD09> {[ o,          O,          odiaeresis, Odiaeresis ]};
key <AC02> {[ s,          S,          ssharp,     U1E9E      ]};
key <AD07> {[ u,          U,          udiaeresis, Udiaeresis ]};
key <AD10> {[ p,          P,          aring,      Aring      ]};

include "level3(ralt_switch)"

Including level3(ralt_switch) allows me to access the third layer by holding down the right alt key. This is how you access the other layers:

  • 1: hold down nothing
  • 2: hold Shift
  • 4: hold Shift+alt

With the key keyword you can remap a key. In the angle brackets you specify the position of the key on the keyboard. The second letter specifies the row:

  • B: bottom row
  • C: middle row
  • D: top row
  • E: number row

The next two digits specify the position on the row starting with 01 from the left.

The next bit of syntax is self-explanatory:

{[ layer1, layer2, layer3, layer4 ]};

You can leave out layer4 to map it to nothing.

You then should be able to select your custom layout. If you use Sway, add the following to the config file.

input * xkb_layout "us-custom"

Alternatively, export the environment variable XKB_DEFAULT_LAYOUT=us-custom.

See also: XKB on ArchWiki

1
submitted 5 years ago by [email protected] to c/[email protected]

This video addresses:

  • Are tiny keyboards useful?
  • What about special characters in languages other than English?
  • How do you access numbers and function keys on a 40% keyboard?
  • Comparison of sound intensity of different switches
1
submitted 5 years ago by [email protected] to c/[email protected]

If you are currently using z, autojump, fasd or similar, take a look at it. frece is the kind of tool that does one thing well and can be used in ways the authors didn’t think of.

In my case it replaced mlocate. See open-files-frece and frece-updatedb.

It is written in Rust and available in the AUR.

view more: ‹ prev next ›

Ordoviz

0 post score
0 comment score
joined 5 years ago
MODERATOR OF