Changeset 487838e
- Timestamp:
- Oct 24, 2020, 8:19:52 AM (4 years ago)
- Branches:
- master
- Children:
- 8e04a0f
- Parents:
- 9742500
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
content/about.org
r9742500 r487838e 110 110 111 111 #+END_EXPORT 112 113 * Сообщества 114 Я администрирую/модерирую несколько сообществ в Telegram 115 116 | Название | Описание | 117 |----------------------------+-------------------------------------------------------------------------------------------------| 118 | [[https://t.me/gnu_ru][Группа GNU]] | Группа посвящена фонду свободного програмного обеспечения GNU и этике движения за свободное ПО. | 119 | GNU Group (по приглашению) | Тоже самое, но на английском | 120 | [[https://t.me/gnu_guix_ru][Russian Guix System]] | Полностью свободный функциональный пакетный менеджер и операционная система | 121 | [[https://t.me/lisp_forever][Lisp Forever]] | Обсуждение Common Lisp и других языков семейства Lisp | 122 123 Предвкушая вопрос о свободности Telegram: 124 [[https://www.gnu.org/philosophy/network-services-arent-free-or-nonfree.html][Network Services Aren't Free or Nonfree; They Raise Other Issues]] -
content/index.org
r9742500 r487838e 3 3 #+LANGUAGE: ru 4 4 5 * Статьи5 * Cтатьи 6 6 7 #+BEGIN_SRC emacs-lisp :exports results :results html8 (defun read-lines (filePath)7 #+BEGIN_SRC emacs-lisp :exports results :results html 8 (defun read-lines (filePath) 9 9 "Return a list of lines of a file at filePath." 10 (with-temp-buffer11 (insert-file-contents filePath)12 (split-string (buffer-string) "\n" t)))10 (with-temp-buffer 11 (insert-file-contents filePath) 12 (split-string (buffer-string) "\n" t))) 13 13 14 14 ;; Sort by modified date 15 (setq list-of-posts (sort (directory-files-and-attributes "./posts" nil ".org$")16 15 (setq list-of-posts (sort (directory-files-and-attributes "./posts" nil ".org$") 16 #'(lambda (x y) (time-less-p (nth 6 y) (nth 6 x))))) 17 17 18 18 (defun make-links (str) 19 (setq file-name (car str)) 20 (setq str-link (s-replace ".org" ".html" file-name)) 21 ;; We make an assumption, that #+TITLE is on first line 22 (setq article-title (s-replace "#+TITLE: " "" (car (read-lines (concat "posts/" file-name))))) 23 (concat "<li><a href=\"/posts/" str-link "\">" article-title "</a></li>")) 19 (setq file-name (car str)) 20 (setq str-link (s-replace ".org" ".html" file-name)) 21 ;; We make an assumption, that #+TITLE is on first line 22 (setq article-title (s-replace "#+TITLE: " "" (car (read-lines (concat "posts/" file-name))))) 23 (concat "<li><a href=\"/posts/" str-link "\">" article-title "</a></li>")) 24 25 (concat "<ul>" (mapconcat 'make-links list-of-posts "\n") "</ul>") 26 #+END_SRC 24 27 25 (concat "<ul>" (mapconcat 'make-links list-of-posts "\n") "</ul>") 26 #+END_SRC 27 28 * Проекты 29 30 | Название | Описание | 31 |--------------+----------------------------------------------------------------------------| 32 | [[https://git.sr.ht/~w96k/doujinhub][GNU Ensemble]] | Платформа для музыкальной коллаборации между композиторами и исполнителями | 33 34 * Сообщества 35 Я администрирую/модерирую несколько сообществ в Telegram 36 37 | Название | Описание | 38 |----------------------------+-------------------------------------------------------------------------------------------------| 39 | [[https://t.me/gnu_ru][Группа GNU]] | Группа посвящена фонду свободного програмного обеспечения GNU и этике движения за свободное ПО. | 40 | GNU Group (по приглашению) | Тоже самое, но на английском | 41 | [[https://t.me/gnu_guix_ru][Russian Guix System]] | Полностью свободный функциональный пакетный менеджер и операционная система | 42 | [[https://t.me/lisp_forever][Lisp Forever]] | Обсуждение Common Lisp и других языков семейства Lisp | 43 44 Предвкушая вопрос о свободности Telegram: 45 [[https://www.gnu.org/philosophy/network-services-arent-free-or-nonfree.html][Network Services Aren't Free or Nonfree; They Raise Other Issues]] 46 28 * Другие авторы 29 30 #+BEGIN_SRC emacs-lisp :exports results :results html 31 (let ((org-webring-items-total 4) 32 (org-webring-items-per-source 1) 33 (org-webring-header 'nil) 34 (org-webring-summary-max-length 150) 35 (org-webring-display-version 'nil) 36 (org-webring-display-generation-time 'nil) 37 (org-webring-urls '("https://brettgilio.com/rss.xml" 38 "http://guix.gnu.org/feeds/blog.atom" 39 "https://drewdevault.com/blog/index.xml" 40 "https://wingolog.org/feed/atom" 41 "https://alirezahayati.com/feed" 42 "https://dthompson.us/feed.xml" 43 "https://ambrevar.xyz/atom.xml" 44 "https://brown.121407.xyz/posts/rss.xml"))) 45 (org-webring-generate-webring)) 46 #+END_SRC 47 47 48 * Пожертвования 48 49 Я принимаю пожертвования через платформу Liberapay. Пожертвования -
env.scm
r9742500 r487838e 3 3 "emacs-s" 4 4 "emacs-simple-httpd" 5 "emacs-org-webring" 5 6 "coreutils" 6 7 "inotify-tools" -
public/css/custom.css
r9742500 r487838e 214 214 height: 3em; 215 215 } 216 217 /* Style for WEBRING */ 218 .org-webring .org-webring-articles { 219 display: flex; 220 flex-flow: row wrap; 221 } 222 .org-webring .org-webring-article-title { 223 font-size: 0.8rem; 224 margin: 1em; 225 font-weight: bold; 226 } 227 .org-webring .org-webring-article { 228 background: #f6f6f6; 229 flex: 1 1 auto; 230 flex-basis: 40%; 231 display: flex; 232 flex-direction: column; 233 margin: 0.5em; 234 padding: 0.15em 0.3em; 235 border: 0.1rem solid rgba(0,0,0,.25); 236 transition: 0.3s; 237 opacity: 1; 238 } 239 .org-webring .org-webring-article:hover { 240 opacity: 1; 241 background-color: #ebebeb; 242 } 243 244 .org-webring .org-webring-article-pinned { 245 position: relative; 246 flex: 1 1 auto; 247 flex-basis: 100%; 248 display: flex; 249 flex-direction: column; 250 margin: 0 0.5rem; 251 padding: 0.5rem; 252 border: 0.15rem black solid; 253 border-color: black; 254 transition: 0.3s; 255 opacity: 1; 256 } 257 .org-webring .org-webring-article-pinned:hover { 258 opacity: 1; 259 background-color: #fefefe; 260 } 261 .org-webring .org-webring-article-pinned-symbol{ 262 position: absolute; 263 top: 0.2rem; 264 right: 0.5rem; 265 } 266 .org-webring .org-webring-article-summary { 267 font-size: 0.8rem; 268 margin: 0 1em 1em 1em; 269 flex: 1 1 0; 270 } 271 .org-webring .org-webring-attribution { 272 text-align: right; 273 font-size: 0.8rem; 274 padding-right: 0.5em; 275 color: #666; 276 } 277 .org-webring .org-webring-article-date { 278 text-align: center; 279 } 280 .org-webring .org-webring-article-source { 281 text-align: center; 282 } 283 .org-webring .org-webring-timestamp { 284 color: #666; 285 } 286 @media screen and (max-width: 600px) { 287 .org-webring .org-webring-articles { 288 display: flex; 289 flex-direction: column; 290 } 291 } 292 @media screen and (max-width: 600px) { 293 .org-webring .org-webring-article { 294 flex: 1 1 auto; 295 flex-basis: 100%; 296 display: flex; 297 flex-direction: column; 298 margin: 0 0.5rem; 299 margin-bottom: 0.5rem; 300 padding: 0.5rem; 301 } 302 .org-webring .org-webring-article-pinned { 303 position: relative; 304 flex: 1 1 auto; 305 flex-basis: 100%; 306 display: flex; 307 flex-direction: column; 308 margin: 0 0.5rem; 309 margin-bottom: 0.5rem; 310 padding: 0.5rem; 311 border: 0.15rem black solid; 312 border-color: black; 313 transition: 0.3s; 314 opacity: 1; 315 } 316 } 317
Note:
See TracChangeset
for help on using the changeset viewer.