Precisely configure column width. (It can go much smaller than smallest built-in setting!)
Adjust tweet actions and below-tweet compose box to account for small columns.
Enables hyphenation so tweets take less space.
Hide the column header so tweets have more space:
On column hover, a little floating tab slides down from the top of that column.
Hovering over that then slides down the full column header (with the settings etc).
Various additional tweaks to make the above work beautifully!
Each column gets a colour of the rainbow (when used with my Sidebar userstyle), which is also used by the sidebar icons, for quicker visual recognition
Avatars are slightly smaller
Works best installed alongside BetterTweetDeck
Notes
Userstyle doesn't have notes.
Source code
/* ==UserStyle==
@name Tweetdeck: Space optimisation
@namespace USO Archive
@author Félix Saparelli
@description Various space optimisation tweaks. - Hide scrollbars without breaking scrolling. - Precisely configure column width. (It can go much smaller than smallest built-in setting!) - Adjust tweet actions and below-tweet compose box to account for small columns. - Enables hyphenation so tweets take less space. - Hide the column header so tweets have more space: * On column hover, a little floating tab slides down from the top of that column. * Hovering over <i>that</i> then slides down the full column header (with the settings etc). - Various additional tweaks to make the above work beautifully! - Each column gets a colour of the rainbow (when used with my Sidebar userstyle), which is also used by the sidebar icons, for quicker visual recognition - Avatars are slightly smaller - Works best installed alongside BetterTweetDeck
@version 20210406.09.16
@license NONE
@preprocessor uso
==/UserStyle== */
@-moz-document domain("tweetdeck.twitter.com") {
body {
font-family: "Noto+Sans", "Noto Sans", sans-serif;
}
p.tweet-text,
p.js-tweet-text {
font-size: 12px;
line-height: 1.25;
hyphens: auto;
}
p.tweet-text a,
p.js-tweet-text a {
hyphens: initial;
}
p.txt-large.js-tweet-text {
font-family: "Liberation+Serif", "Liberation Serif", serif !important;
font-size: 17px !important;
}
.column {
/** Column width. Customise this! Or delete it and set it in BTD **/
width: 201px !important;
}
.column-scroller {
/** Trick that hides the scrollbars. Adjust for your screen/system! **/
width: 106%;
}
html.dark .column-header, html.light .column-header {
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
transition: height 100ms;
z-index: 100;
overflow: hidden;
background: var(--col-colour) !important;
}
.column:nth-child(1) { --col-colour: var(--col-colour-1); }
.column:nth-child(2) { --col-colour: var(--col-colour-2); }
.column:nth-child(3) { --col-colour: var(--col-colour-3); }
.column:nth-child(4) { --col-colour: var(--col-colour-4); }
.column:nth-child(5) { --col-colour: var(--col-colour-5); }
.column:nth-child(6) { --col-colour: var(--col-colour-6); }
.column:nth-child(7) { --col-colour: var(--col-colour-7); }
.column:nth-child(8) { --col-colour: var(--col-colour-8); }
.column:nth-child(9) { --col-colour: var(--col-colour-9); }
.column:nth-child(10) { --col-colour: var(--col-colour-10); }
.column:nth-child(11) { --col-colour: var(--col-colour-11); }
.column:nth-child(12) { --col-colour: var(--col-colour-12); }
.column:nth-child(13) { --col-colour: var(--col-colour-13); }
.column:nth-child(14) { --col-colour: var(--col-colour-14); }
.column:nth-child(15) { --col-colour: var(--col-colour-15); }
.column:nth-child(16) { --col-colour: var(--col-colour-16); }
.column:nth-child(17) { --col-colour: var(--col-colour-17); }
.column:nth-child(18) { --col-colour: var(--col-colour-18); }
.column:hover .column-header {
height: 16px;
box-shadow: 0 0 0.5em 0 rgba(0, 0, 0, 0.2);
border-bottom: 1px solid lightgray;
}
.column-header:hover, .js-column-state-detail-view .column-header {
height: 50px !important;
}
.btd-on .column-header .column-title-editable {
margin-left: 0;
width: 13rem;
}
.tweet-action .icon {
--size: 18px;
font-size: var(--size) !important;
height: var(--size) !important;
line-height: var(--size) !important;
width: var(--size) !important;
}
i.icon-conversation.icon {
display: none !important;
}
.avatar {
--size: 2.5rem;
height: var(--size) !important;
width: var(--size) !important;
margin-left: 2px !important;
}
.tweet-content,
.tweet-img {
margin-left: -46px !important;
}
.item-img {
width: 36px !important;
}
.tweet {
padding-left: 0px !important;
}
.tweet .tweet-text {
margin-top: 0.7em;
min-height: 1em;
}
.tweet .tweet-header {
height: 27px;
padding-left: 46px;
}
.tweet .tweet-header .tweet-img {
left: 0;
}
.tweet-body > .nbfc {
padding-left: 46px;
margin-top: -1.3em;
min-height: 1em;
}
.tweet-context {
margin-left: -20px;
}
.tweet .quoted-tweet .tweet-header {
padding-left: 0px;
}
.js-tweet.tweet-detail,
.js-tweet.tweet-detail > div:nth-child(1) {
margin-left: 0 !important;
}
.detail-view-inline.scroll-conversation {
margin-left: -10px !important;
}
.activity-header.has-source-avatar > .item-img:nth-child(1) {
display: none;
}
.inline-reply .pull-left.neg-margin-lm {
float: left;
margin-top: -2.5em;
margin-left: 5.4em !important;
}
.inline-reply .compose-account {
float: right;
margin-top: -0.4em !important;
margin-right: 0 !important;
}
.activity-header.has-source-avatar {
align-items: center;
}
.activity-header.has-source-avatar > .tweet-timestamp {
position: relative;
top: -1em;
}
.activity-header.has-source-avatar i.icon {
position: absolute;
left: 56px;
top: 30px;
}
.activity-header.has-source-avatar + .tweet {
margin-top: 1em;
}
.activity-header.has-source-avatar + .tweet .tweet-header {
padding-left: 0;
}
.activity-header.has-source-avatar + .tweet .tweet-text {
text-indent: 0;
}
article.stream-item .account-summary-text {
width: 100%;
}
.thread {
left: 0;
width: 2px;
border-radius: 0;
background-color: var(--col-colour);
opacity: 0.5;
}
html.dark.dropdown-menu.pos-l, html.light .dropdown-menu.pos-l {
right: 0;
}
.tweet-stats > .tweet-stat:nth-child(2) .stat-word {
width: 2em;
overflow-y: hidden;
height: 1.2em;
}
.scroll-conversation .js-detail-content {
padding-top: 50px;
}
}