Skip to main content
GrN.dk

Main navigation

  • Articles
  • Cases
  • Contact
  • Your Digital Project Manager
  • About Greg Nowak
  • Services
  • Portfolio
  • Container
    • Excel Freelancer
    • Kubuntu - tips and tricks
    • Linux Apache MySQL and PHP
    • News
    • Image Gallery
User account menu
  • Log in

Breadcrumb

  1. Home

Keyboard Mapping Kubuntu 20.04

Quick instructions:

insert: "keycode 49 = less greater backslash backslash backslash" in "$HOME/.Xmodmap" and run "xmodmap .Xmodmap" - this will setup your keys on the system.
To make these keys persistent run: "xkbcomp $DISPLAY $HOME/.xkbmap"

Very interesting: https://medium.com/@saplos123456/persistent-keyboard-mapping-on-ubuntu-using-xmodmap-cd01ad828fcd

And useful when you want danish keyboard layout with a thai keyboard for instance. I really needed to map backslash "\" to a key on the keyboard because the key does not exist on a thai keyboard when danish keyboard layout is used.

My .Xmodmap file: 

Tilde ~ becomes less than "<", greater than ">", and backslash "\":

keycode 49 = less greater backslash backslash backslash

Disable left shift because it is broken and sticks on my T495s, Which is the reason why I will never buy a s series again, because the replacement keyboard is very expensive:

keycode 50 = NoSymbol NoSymbol NoSymbol NoSymbol NoSymbol

So because the left shift is not working I don't use my capslock anymore, and it has become the left shift:

keycode 66 = Shift_L NoSymbol Shift_L NoSymbol Shift_L

 

Full file content:

keycode 49 = less greater backslash backslash backslash
keycode 50 = NoSymbol NoSymbol NoSymbol NoSymbol NoSymbol
keycode 66 = Shift_L NoSymbol Shift_L NoSymbol Shift_L

NOT in use:

fn button old: keycode 151 = XF86WakeUp NoSymbol XF86WakeUp NoSymbol XF86WakeUp
fn button new: keycode 151 = Shift_L NoSymbol Shift_L NoSymbol Shift_L
 

keys

Last modified
2022-12-27

Tags

  • Linux
  • Log in to post comments

Review Greg on Google

Greg Nowak Google Reviews

 

Illustrated infographic summarizing: Not Every AI Job Needs an Instant Answer: Batch the Backlog
Not Every AI Job Needs an Instant Answer: Batch the Backlog
2026-07-28

Move delay-tolerant AI work into dependable batch queues to cut processing costs without compromising quality, data controls, or urgent workflows.

Illustrated infographic summarizing: A stray Set-Cookie can waste your CDN: audit the cache at the edge
A stray Set-Cookie can waste your CDN: audit the cache at the edge
2026-07-27

Cloudflare Cache Response Rules can recover wasted CDN capacity, but first you need a route-level audit of public, personal and authenticated responses.

Illustrated infographic summarizing: Shorter TLS certificates expose every renewal you never automated
Shorter TLS certificates expose every renewal you never automated
2026-07-26

Shorter TLS lifetimes leave less room for manual handoffs and faulty deploy hooks. Build a renewal path that protects service availability.

Illustrated infographic summarizing: One Timeout, Two Orders: Make AI Actions Safe to Retry
One Timeout, Two Orders: Make AI Actions Safe to Retry
2026-07-25

A timed-out AI action may already have succeeded. Stable keys, durable ledgers, queues and stored results prevent a routine retry from duplicating real work.

Illustrated infographic summarizing: Your AI Visibility Dashboard Needs a Methodology, Not More Charts
Your AI Visibility Dashboard Needs a Methodology, Not More Charts
2026-07-24

A practical framework for measuring AI-search visibility with fixed prompts, repeated tests, separate metrics, retained evidence, and honest reporting.

Illustrated infographic summarizing: AI Admin APIs Are Here—But Your Directory Is Still the Source of Truth
AI Admin APIs Are Here—But Your Directory Is Still the Source of Truth
2026-07-23

New AI admin APIs can automate access and spend controls, but reliable governance still starts with authoritative directory data and clear ownership.

Illustrated infographic summarizing: OpenAI Presence Arrived—But Is Your Workflow Ready for an Agent?
OpenAI Presence Arrived—But Is Your Workflow Ready for an Agent?
2026-07-22

Before an AI agent can take on real work, its workflow needs clear scope, permissions, handoffs, evaluation cases, and production monitoring.

Illustrated infographic summarizing: Chatbot Transcripts Quietly Became a Retention and Redaction Problem
Chatbot Transcripts Quietly Became a Retention and Redaction Problem
2026-07-21

Chatbot transcripts spread across providers, logs and support tools. Here is how to map each copy, redact sensitive data and test deletion properly.

Illustrated infographic summarizing: Cloudflare Service Keys Stop in September: Find Every Caller
Cloudflare Service Keys Stop in September: Find Every Caller
2026-07-20

Cloudflare Service Keys stop working on September 30, 2026. Here is how to find every caller, move to scoped API tokens and avoid a late outage.

Illustrated infographic summarizing: Your AI Workflow Needs an Acceptance Test Before It Meets Customers
Your AI Workflow Needs an Acceptance Test Before It Meets Customers
2026-07-19

A practical way to test AI workflows using realistic scenarios, tool checks, human rubrics, regression suites, and clear release gates.

More articles
RSS feed

GrN.dk web platforms, web optimization, data analysis, data handling and logistics.