├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── content ├── course │ └── lpic1 │ │ ├── 1011_determine_and_configure_hardware_settings.md │ │ ├── 1012_boot_the_system.md │ │ ├── 1013_change_runlevels_and_shutdown_or_reboot_system.md │ │ ├── 1021_design_hard_disk_layout.md │ │ ├── 1022_install_a_boot_manager.md │ │ ├── 1023_manage_shared_libraries.md │ │ ├── 1024_use_debian_package_management.md │ │ ├── 1025_use_rpm_and_yum_package_management.md │ │ ├── 1031_work_on_the_command_line.md │ │ ├── 1032_process_text_streams_using_filters.md │ │ ├── 1033_perform_basic_file_management.md │ │ ├── 1034_use_streams,_pipes_and_redirects.md │ │ ├── 1035_create,_monitor_and_kill_processes.md │ │ ├── 1036_modify_process_execution_priorities.md │ │ ├── 1037_search_text_files_using_regular_expressions.md │ │ ├── 1038_perform_basic_file_editing_operations_using_vi.md │ │ ├── 1041_create_partitions_and_filesystems.md │ │ ├── 1042_maintain_the_integrity_of_filesystems.md │ │ ├── 1043_control_mounting_and_unmounting_of_filesystems.md │ │ ├── 1044_manage_disk_quotas.md │ │ ├── 1045_manage_file_permissions_and_ownership.md │ │ ├── 1046_create_and_change_hard_&_symbolic_links.md │ │ ├── 1047_find_system_files_and_place_files_in_the_correct_location.md │ │ ├── 1051_customize_and_use_the_shell_environment.md │ │ ├── 1052_customize_or_write_simple_scripts.md │ │ ├── 1053_sql_data_management.md │ │ ├── 1061_install_and_configure_x11.md │ │ ├── 1062_setup_a_display_manager.md │ │ ├── 1063_accessibility.md │ │ ├── 1071_manage_user_and_group_accounts_and_related_system_files.md │ │ ├── 1072_automate_system_administration_tasks_by_scheduling_jobs.md │ │ ├── 1073_localisation_and_internationalisation.md │ │ ├── 1081_maintain_system_time.md │ │ ├── 1082_system_logging.md │ │ ├── 1083_mail_transfer_agent_mta_basics.md │ │ ├── 1084_manage_printers_and_printing.md │ │ ├── 1091_fundamentals_of_internet_protocols.md │ │ ├── 1092_basic_network_configuration.md │ │ ├── 1093_basic_network_troubleshooting.md │ │ ├── 1094_configure_client_side_dns.md │ │ ├── 1101_perform_security_administration_tasks.md │ │ ├── 1102_setup_host_security.md │ │ ├── 1103_securing_data_with_encryption.md │ │ ├── UnicodeGrow.png │ │ └── cups.png ├── extra │ └── CNAME └── pages │ ├── about.md │ ├── donate.md │ └── home.md ├── develop_server.sh ├── fabfile.py ├── notes.txt ├── output ├── archives.html ├── author │ └── jadi.html ├── authors.html ├── categories.html ├── index.html ├── tags.html └── theme │ ├── css │ ├── bootstrap.amelia.min.css │ ├── bootstrap.cerulean.min.css │ ├── bootstrap.cosmo.min.css │ ├── bootstrap.cupid.min.css │ ├── bootstrap.cyborg.min.css │ ├── bootstrap.darkly.min.css │ ├── bootstrap.flatly.min.css │ ├── bootstrap.journal.min.css │ ├── bootstrap.lumen.min.css │ ├── bootstrap.min.css │ ├── bootstrap.paper.min.css │ ├── bootstrap.readable-old.min.css │ ├── bootstrap.readable.min.css │ ├── bootstrap.sandstone.min.css │ ├── bootstrap.shamrock.min.css │ ├── bootstrap.simplex.min.css │ ├── bootstrap.slate.min.css │ ├── bootstrap.spacelab.min.css │ ├── bootstrap.superhero.min.css │ ├── bootstrap.united.min.css │ ├── bootstrap.yeti.min.css │ ├── font-awesome.min.css │ ├── pygments │ │ ├── autumn.css │ │ ├── borland.css │ │ ├── bw.css │ │ ├── colorful.css │ │ ├── default.css │ │ ├── emacs.css │ │ ├── friendly.css │ │ ├── fruity.css │ │ ├── github.css │ │ ├── igor.css │ │ ├── manni.css │ │ ├── monokai.css │ │ ├── murphy.css │ │ ├── native.css │ │ ├── paraiso-dark.css │ │ ├── paraiso-light.css │ │ ├── pastie.css │ │ ├── perldoc.css │ │ ├── rrt.css │ │ ├── solarizeddark.css │ │ ├── solarizedlight.css │ │ ├── tango.css │ │ ├── trac.css │ │ ├── vim.css │ │ ├── vs.css │ │ ├── xcode.css │ │ └── zenburn.css │ └── typogrify.css │ ├── fonts │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.svg │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ └── glyphicons-halflings-regular.woff │ └── js │ └── bootstrap.min.js ├── pelican.pid ├── pelicanconf.py ├── plugins └── tag_cloud.py ├── publish.sh ├── publishconf.py ├── srv.pid └── themes ├── .gitignore ├── .gitmodules ├── dev-random ├── LICENSE.txt ├── README.md ├── screenshot.png ├── static │ ├── CNAME │ ├── css │ │ ├── main.css │ │ ├── pygments.css │ │ └── skeleton.css │ ├── img │ │ └── corner.png │ └── js │ │ ├── html5shiv.js │ │ └── microTags.js └── templates │ ├── archives.html │ ├── article.html │ ├── author.html │ ├── base.html │ ├── categories.html │ ├── category.html │ ├── includes │ └── sidebar.html │ ├── index.html │ ├── page.html │ ├── tag.html │ └── tags.html ├── pelican-bootstrap3 ├── AUTHORS.md ├── CONTRIBUTING.md ├── EXAMPLES.md ├── LICENSE ├── README.md ├── screenshot-article.png ├── screenshot.png ├── static │ ├── css │ │ ├── bootstrap.amelia.min.css │ │ ├── bootstrap.cerulean.min.css │ │ ├── bootstrap.cosmo.min.css │ │ ├── bootstrap.cupid.min.css │ │ ├── bootstrap.cyborg.min.css │ │ ├── bootstrap.darkly.min.css │ │ ├── bootstrap.flatly.min.css │ │ ├── bootstrap.journal.min.css │ │ ├── bootstrap.lumen.min.css │ │ ├── bootstrap.min.css │ │ ├── bootstrap.paper.min.css │ │ ├── bootstrap.readable-old.min.css │ │ ├── bootstrap.readable.min.css │ │ ├── bootstrap.sandstone.min.css │ │ ├── bootstrap.shamrock.min.css │ │ ├── bootstrap.simplex.min.css │ │ ├── bootstrap.slate.min.css │ │ ├── bootstrap.spacelab.min.css │ │ ├── bootstrap.superhero.min.css │ │ ├── bootstrap.united.min.css │ │ ├── bootstrap.yeti.min.css │ │ ├── font-awesome.css │ │ ├── font-awesome.min.css │ │ ├── html4css1.css │ │ ├── pygments │ │ │ ├── autumn.css │ │ │ ├── borland.css │ │ │ ├── bw.css │ │ │ ├── colorful.css │ │ │ ├── default.css │ │ │ ├── emacs.css │ │ │ ├── friendly.css │ │ │ ├── fruity.css │ │ │ ├── github.css │ │ │ ├── igor.css │ │ │ ├── manni.css │ │ │ ├── monokai.css │ │ │ ├── murphy.css │ │ │ ├── native.css │ │ │ ├── paraiso-dark.css │ │ │ ├── paraiso-light.css │ │ │ ├── pastie.css │ │ │ ├── perldoc.css │ │ │ ├── rrt.css │ │ │ ├── solarizeddark.css │ │ │ ├── solarizedlight.css │ │ │ ├── tango.css │ │ │ ├── trac.css │ │ │ ├── vim.css │ │ │ ├── vs.css │ │ │ ├── xcode.css │ │ │ └── zenburn.css │ │ ├── shariff │ │ │ └── shariff.min.css │ │ ├── style.css │ │ └── typogrify.css │ ├── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.svg │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ └── glyphicons-halflings-regular.woff │ ├── js │ │ ├── bodypadding.js │ │ ├── bootstrap.min.js │ │ ├── github.js │ │ ├── jXHR.js │ │ ├── jquery.min.js │ │ ├── respond.min.js │ │ └── shariff.min.js │ └── tipuesearch │ │ ├── img │ │ ├── loader.gif │ │ └── search.png │ │ ├── tipuesearch.css │ │ ├── tipuesearch.js │ │ ├── tipuesearch.min.js │ │ ├── tipuesearch_content.js │ │ └── tipuesearch_set.js └── templates │ ├── archives.html │ ├── article.html │ ├── article_list.html │ ├── author.html │ ├── authors.html │ ├── base.html │ ├── categories.html │ ├── category.html │ ├── includes │ ├── aboutme.html │ ├── addthis.html │ ├── article_info.html │ ├── banner.html │ ├── cc-license.html │ ├── comment_count.html │ ├── comments.html │ ├── disqus_script.html │ ├── footer.html │ ├── ga.html │ ├── github-js.html │ ├── github.html │ ├── links.html │ ├── liquid_tags_nb_header.html │ ├── pagination.html │ ├── piwik.html │ ├── related-posts.html │ ├── shariff.html │ ├── sidebar.html │ ├── taglist.html │ ├── translations.html │ ├── twitter_cards.html │ └── twitter_timeline.html │ ├── index.html │ ├── page.html │ ├── search.html │ ├── tag.html │ └── tags.html ├── pelican-twitchy-6a8b844cd9d458debaade0a08048c81c490c23ca.zip └── twitchy ├── .gitignore ├── LICENSE ├── README.md ├── generate_pygments.sh ├── preview_article.PNG ├── preview_big.PNG ├── preview_small.PNG ├── static ├── css │ ├── bootstrap.amelia.min.css │ ├── bootstrap.cerulean.min.css │ ├── bootstrap.cosmo.min.css │ ├── bootstrap.cupid.min.css │ ├── bootstrap.cyborg.min.css │ ├── bootstrap.darkly.min.css │ ├── bootstrap.flatly.min.css │ ├── bootstrap.journal.min.css │ ├── bootstrap.lumen.min.css │ ├── bootstrap.min.css │ ├── bootstrap.paper.min.css │ ├── bootstrap.readable-old.min.css │ ├── bootstrap.readable.min.css │ ├── bootstrap.sandstone.min.css │ ├── bootstrap.shamrock.min.css │ ├── bootstrap.simplex.min.css │ ├── bootstrap.slate.min.css │ ├── bootstrap.spacelab.min.css │ ├── bootstrap.superhero.min.css │ ├── bootstrap.united.min.css │ ├── bootstrap.yeti.min.css │ ├── font-awesome.min.css │ ├── pelican-twitchy.css │ ├── pelican-twitchy.min.css │ ├── pygments │ │ ├── autumn.css │ │ ├── borland.css │ │ ├── bw.css │ │ ├── colorful.css │ │ ├── default.css │ │ ├── emacs.css │ │ ├── friendly.css │ │ ├── fruity.css │ │ ├── github.css │ │ ├── igor.css │ │ ├── manni.css │ │ ├── monokai.css │ │ ├── murphy.css │ │ ├── native.css │ │ ├── paraiso-dark.css │ │ ├── paraiso-light.css │ │ ├── pastie.css │ │ ├── perldoc.css │ │ ├── rrt.css │ │ ├── solarizeddark.css │ │ ├── solarizedlight.css │ │ ├── tango.css │ │ ├── trac.css │ │ ├── vim.css │ │ ├── vs.css │ │ ├── xcode.css │ │ └── zenburn.css │ └── typogrify.css ├── fonts │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.svg │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ ├── fontawesome-webfont.woff2 │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ ├── glyphicons-halflings-regular.woff │ └── glyphicons-halflings-regular.woff2 └── js │ ├── bootstrap.min.js │ ├── jquery-1.11.2.min.js │ ├── pelican_twitchy.js │ └── pelican_twitchy.min.js └── templates ├── archives.html ├── article.html ├── base.html ├── category.html ├── include ├── article_info.html ├── article_list.html ├── cc-license.html ├── comments.html ├── comments_scripts.html ├── disqus_script.html ├── footer.html ├── ga.html ├── open_graph.html └── toc.html ├── index.html ├── page.html └── tag.html /.gitignore: -------------------------------------------------------------------------------- 1 | all-themes/* 2 | .DS_Store 3 | output 4 | *~ 5 | *.pyc 6 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # linuxlearner 2 | free LPIC 1 videos and book. You can find the site at [LinuxLearner.net](http://linuxlearner.net). 3 | 4 | TODO 5 | ==== 6 | [] fix images 7 | [] write pages 8 | [] donation (paypal) 9 | 10 | -------------------------------------------------------------------------------- /content/course/lpic1/1012_boot_the_system.md: -------------------------------------------------------------------------------- 1 | Title: 101.2. Boot the system 2 | Date: 2015-12-25 12:20 3 | Category: lpic101 4 | 5 | 6 | # 101.2. Boot the system 7 | weight: 3 8 | 9 | Candidates should be able to guide the system through the booting process. 10 | 11 | ## Key Knowledge Areas 12 | - Provide common commands to the boot loader and options to the kernel at boot time. 13 | - Demonstrate knowledge of the boot sequence from BIOS to boot completion. 14 | - Check boot events in the log files. 15 | 16 | ## Terms 17 | - BIOS 18 | - bootloader 19 | - kernel 20 | - init 21 | - /var/log/messages 22 | - dmesg 23 | 24 | ### BIOS 25 | BIOS is Basic Input Output System and does the first steps of the PC bootup. For example is does a POST (Power On Self Test) and decides which hardware should boot the system. 26 | 27 | ### bootloader 28 | 29 | Bootloader can be GRUB (1&2) or LILO which are great for disks less than 2TB. 30 | 31 | /etc/lilo.conf 32 | /boot/grub/grub.cfg 33 | /boot/grub/menu.lst 34 | 35 | 36 | ### Kernel 37 | Kernel parameters (sometimes called boot parameters) supply the kernel with information about hardware parameters that it might not determine on its own - say single user mod boot (S) 38 | 39 | ### init 40 | When the kernel finishes loading, it usually starts /sbin/init. This program remains running until the system is shut down. It is always assigned process ID 1. 41 | 42 | first process, process in charge, a big family tree of commands: 43 | 44 | pstree 45 | 46 | init is being replaced in many distros (say ubuntu with upstart) but still is in exam and has its own section. 47 | 48 | ### dmesg 49 | **Funny fact:** During the bootup, only The Kernel is running so it should record and keep its own logs! 50 | 51 | dmesg command will show the full data from **kernel ring buffer** up to now. But 52 | 53 | cat /var/log/dmesg 54 | 55 | will show **only** the data during the boot 56 | 57 | ### /var/log/messages 58 | After the init process comes up, syslog daemon will log messages. It has timestamps and will persist during restarts. 59 | 60 | - Kernel is still logging its own messages in dmesg 61 | - in some systems it might be called /var/log/syslog 62 | - there are many other logs at /var/log 63 | -------------------------------------------------------------------------------- /content/course/lpic1/1043_control_mounting_and_unmounting_of_filesystems.md: -------------------------------------------------------------------------------- 1 | Title: 104.3. Control mounting and unmounting of filesystems 2 | Date: 2015-12-25 12:20 3 | Category: lpic102 4 | 5 | 6 | # 104.3. Control mounting and unmounting of filesystems 7 | 8 | weight: 3 9 | 10 | **http://j.mp/jadilpic1** 11 | 12 | Configure the mounting of a filesystem. Tasks include manually mounting and unmounting filesystems, configuring filesystem mounting on bootup, and configuring user-mountable removable filesystems. 13 | 14 | - Mount and unmount filesystems manually 15 | - Configure filesystem mounting on bootup 16 | - Configure user-mountable, removable filesystems 17 | 18 | ## A note about Device UUIDs 19 | As you saw, on /dev/ we can see hard disks, usb disks and such. But the there is an problem. When you refer to a disk ask /dev/sda2, you kind of say _the second partition on the firsrt disk_. If you disconnect this device and connect another disk and then connect back the device, it might become /dev/sdc2 or even /dev/sde2. We need a way to point to the exact drive with a persistant name. This is done via UUIDs. 20 | 21 | ```` 22 | root@funlife:/dev# cat /proc/mounts 23 | rootfs / rootfs rw 0 0 24 | sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 25 | proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 26 | udev /dev devtmpfs rw,relatime,size=4014804k,nr_inodes=1003701,mode=755 0 0 27 | devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 28 | tmpfs /run tmpfs rw,nosuid,noexec,relatime,size=806028k,mode=755 0 0 29 | /dev/disk/by-uuid/1651a94e-0b4e-47fb-aca0-f77e05714617 / ext4 rw,relatime,errors=remount-ro,data=ordered 0 0 30 | ```` 31 | 32 | This UUID is uniq among all devices and this makes it much easier to work with it not only on different sessions on a same machine, but even after connecting it to another computer. 33 | 34 | 35 | ### Mounting and Unmounting 36 | 37 | - Describe the linux filesystem concept. A huge tree. 38 | - There are other kinds of mountings: tmpfs, NFS, .. 39 | - It is better to mount on empty directories 40 | 41 | #### Basic commands 42 | ``` 43 | cat /etc/fstab 44 | mount /dev/sda1 /media 45 | umount /media 46 | ``` 47 | 48 | #### Some switches 49 | ``` 50 | mount -t ext4 /dev/sda1 /media 51 | mount -o remount,ro /dev/sda1 52 | ``` 53 | 54 | #### Get info on UUID and Label and Format 55 | ``` 56 | blkid /dev/sda2 57 | ``` 58 | 59 | ### Bootup 60 | /etc/fstab 61 | 62 | - file system: Label, UUID, device 63 | - mount point: swap or none for swap 64 | - type: can be auto 65 | - options: defaults, rw / ro, noauto, user, exec / noexec, noatime 66 | - dump: do dump command backup this? mostly 0 67 | - pass: Non-zero values of pass specify the order of checking filesystems at boot time (seen in Integrity of file systems) 68 | 69 | **note:** 70 | - User-mounted filesystems default to noexec unless exec is specified after user. 71 | - noatime will disable recording of access times. Not using access times may improve performance. 72 | 73 | ### swap 74 | ``` 75 | swapon 76 | swapoff 77 | swapon -s 78 | ``` 79 | -------------------------------------------------------------------------------- /content/course/lpic1/1046_create_and_change_hard_&_symbolic_links.md: -------------------------------------------------------------------------------- 1 | Title: 104.6. Create and change hard & symbolic links 2 | Date: 2015-12-25 12:20 3 | Category: lpic102 4 | 5 | 6 | # 104.6. Create and change hard & symbolic links 7 | weight: 2 8 | 9 | ### Key Knowledge Areas 10 | - Create links. 11 | - Identify hard and/or softlinks. 12 | - Copying versus linking files. 13 | - Use links to support system administration tasks. 14 | 15 | - ln 16 | - unlink 17 | 18 | #### Notes 19 | On a storage device, a file or directory is contained in a collection of blocks. Information about a file is contained in an inode, which records information such as the owner, when the file was last accessed, how large it is, whether it is a directory or not, and who can read from or write to it. 20 | 21 | $ ls -i 22 | $ ls -R 23 | 24 | A link is simply an additional directory entry for a file or directory 25 | 26 | $ ls -il 27 | $ vi link2file.txt #will edit both 28 | $ mv myfile.txt 29 | 30 | A link is simply an additional directory entry for a file or directory, allowing two or more names for the same thing. A hard link is a directory entry that points to an inode, while a soft link or symbolic link is a directory entry that points to an inode that provides the name of another directory entry. The exact mechanism for storing the second name may depend on both the file system and the length of the name. Symbolic links are also called symlinks. 31 | 32 | Soft links, or symlinks, merely point to another file or directory by name rather than by inode. Soft links can cross file system boundaries. 33 | 34 | $ cp myfile.txt newfile.txt 35 | $ vi myfile.txt 36 | $ cat myfile.txt 37 | $ cat softlink.txt 38 | $ cat hardlink.txt 39 | $ cat newfile.txt 40 | $ ls -il 41 | 42 | You can create hard links only for files and not for directories. The exception is the special directory entries in a directory for the directory itself and for its parent (. and ..) 43 | 44 | $ ls -ltrhi /etc/grub2.cfg 45 | 46 | You will get an error if you attempt to create hard links that cross file systems or that are for directories. 47 | 48 | $ ln mydir link2dir # error! 49 | $ ln -s mydir link2dir 50 | 51 | If you are using relative names, you will usually want the current working directory to be the directory where you are creating the link; otherwise, the link you create will be relative to another point in the file system. 52 | 53 | $ ln -s myfile.txt mydir/ #broken link 54 | 55 | $ cd mydir 56 | $ ln -s ../myfile.txt . 57 | 58 | we can find symbolic links with ls -i or even find: 59 | 60 | $ find . -type l 61 | 62 | and they are useful! 63 | 64 | $ which java # linking to specific versions 65 | $ ls -ltrhi /etc/grub2.cfg # easier admin tasks 66 | $ ls -l /usr/lib64/ # keeping libraries clean 67 | -------------------------------------------------------------------------------- /content/course/lpic1/1062_setup_a_display_manager.md: -------------------------------------------------------------------------------- 1 | Title: 106.2 Setup a display manager 2 | Date: 2015-12-25 12:20 3 | Category: lpic102 4 | 5 | 6 | # 106.2 Setup a display manager 7 | *Weight: 1* 8 | 9 | Candidates should be able to describe the basic features and configuration of the LightDM display manager. This objective covers awareness of the display managers XDM (X Display Manger), GDM (Gnome Display Manager) and KDM (KDE Display Manager). 10 | 11 | ## Key Knowledge Areas 12 | - Basic configuration of LightDM 13 | - Turn the display manager on or off 14 | - Change the display manager greeting 15 | - Awareness of XDM, KDM and GDM 16 | 17 | ## Terms and Utilities 18 | - lightdm 19 | - /etc/lightdm/ 20 | 21 | ## Display Manager 22 | A **Display Manager** is a graphical interface which lets you login into your system when you turn your computer on. There are many different display managers (say XDM, SDDM, KDM, GDM, ...) but their general functionality is same: show a login form and let the user the enter (or choose) its name, password and the Desktop she needs to use. Also many of the DMs let the user to choose Accessibility Tools (covered in 106.3), connect to the network, change the keyboard layout or change the system volume. 23 | 24 | ## lightdm 25 | Many of the distros use **LightDM** as their display/login manager. It shows the default user (last logged in user) and asks for password. If you have more than one desktop installed (say XFCE, KDE and Gnome) it also lets you choose the one you need. 26 | 27 | *lightdm* can accept *themes* and calls them *greeters*. 28 | 29 | ## /etc/lightdm 30 | All of the lightdm configs are in `/etc/lightdm`. 31 | 32 | ```` 33 | $ ls -ltrh /etc/lightdm/ 34 | total 24K 35 | -rw-r--r-- 1 root root 40 Sep 23 12:56 keys.conf 36 | -rw-r--r-- 1 root root 801 Sep 27 13:03 lightdm-webkit2-greeter.conf 37 | -rw-r--r-- 1 root root 452 Sep 27 13:08 users.conf 38 | -rwxr-xr-x 1 root root 1.5K Sep 27 13:08 Xsession 39 | -rw-r--r-- 1 root root 6.5K Sep 27 13:08 lightdm.conf 40 | ```` 41 | 42 | Some distributions like Ubuntu are using a `lightdm.conf.d` directory instead of a straight forward `lightdm.conf` and put their configs there. 43 | 44 | ```` 45 | [SeatDefaults] 46 | ... 47 | user-session=gnome 48 | #autologin-user=jadi 49 | #allow-user-switching=true 50 | allow-guest=true 51 | greeter-session=lightdm-webkit2-greeter 52 | ... 53 | ```` 54 | 55 | The `greeter-session` tells which greeter (theme) should be used. You can install more greeters using your package manager. Another important config is `user-session` which tells the lightdm what desktop is the default one. 56 | 57 | ## controlling DMs 58 | The `lightdm` works as a service. You can start, stop & restart it or even use `systemctl disable lightdm` to disable it on next boots. 59 | 60 | > You already know how to reboot your computer in text mode from previous lessons (using grub, kernel parameters during the boot or using `init` command). 61 | -------------------------------------------------------------------------------- /content/course/lpic1/1063_accessibility.md: -------------------------------------------------------------------------------- 1 | Title: 106.3 Accessibility 2 | Date: 2015-12-25 12:20 3 | Category: lpic102 4 | 5 | 6 | # 106.3 Accessibility 7 | *Weight: 1* 8 | 9 | Demonstrate knowledge and awareness of accessibility technologies. 10 | 11 | ## Key Knowledge Areas 12 | - Basic knowledge of keyboard accessibility settings (AccessX) 13 | - Basic knowledge of visual settings and themes 14 | - Basic knowledge of assistive technology (ATs) 15 | 16 | ## Terms and Utilities 17 | - Sticky/Repeat Keys 18 | - Slow/Bounce/Toggle Keys 19 | - Mouse Keys 20 | - High Contrast/Large Print Desktop Themes 21 | - Screen Reader 22 | - Braille Display 23 | - Screen Magnifier 24 | - On-Screen Keyboard 25 | - Gestures (used at login, for example GDM) 26 | - Orca 27 | - GOK 28 | - emacspeak 29 | 30 | ## Linux is for everyone 31 | Some people have physical complications. Some can not see well, some can not see at all and some can not user their finger as I can do. Linux have 3 answers: 32 | 33 | 1- AccessX helps people with physical problems to use keyboard/mouse 34 | 2- Visual Settings help people with vision problems by magnifying the screen and things like that 35 | 3- Assistive Technologies are things like text-to-speech (tts) and reads the screen for people with visual problem 36 | 37 | These options are available in display managers (login screen) and in major desktops (like gnome, kde, xfce, ...). Its logo is a human stretching its hands a legs. 38 | 39 | In Gnome the config is located at Settings ~ Universal Access. The configurations are categorized and are as follows: 40 | 41 | - High Contrast 42 | - Zoom 43 | - Large text 44 | - Screen Reader 45 | - Screen Keyboard (show a keyboard on screen) 46 | - Visual Alerts (instead Beeps, flash the screen ) 47 | - Sticky Keys (Press shift, then press a -> capital A) 48 | - Slow Keys (do not repeat keys after pressing a key for few seconds) 49 | - Bounce Keys (if you hit a key twice fast, it won't accept the second one) 50 | - Mouse Keys (Arrow keys on number path will work as a mouse) 51 | - Simulate Secondary Click (by holding down the click) 52 | - Hover click (click by waiting on a button) 53 | 54 | ## TTS 55 | Applications like **Orca** or **Emacspeak** can read the dialog boxes to you so you can decide what the answer only by hearing. 56 | -------------------------------------------------------------------------------- /content/course/lpic1/UnicodeGrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/content/course/lpic1/UnicodeGrow.png -------------------------------------------------------------------------------- /content/course/lpic1/cups.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/content/course/lpic1/cups.png -------------------------------------------------------------------------------- /content/extra/CNAME: -------------------------------------------------------------------------------- 1 | linuxlearner.net 2 | -------------------------------------------------------------------------------- /content/pages/about.md: -------------------------------------------------------------------------------- 1 | Title: about 2 | Date: 2015-12-25 12:20 3 | Category: pages 4 | Tags: test 5 | 6 | # About Jadi 7 | -------------------------------------------------------------------------------- /content/pages/donate.md: -------------------------------------------------------------------------------- 1 | Title: donate 2 | Date: 2015-12-25 12:20 3 | Category: other 4 | Tags: test 5 | 6 | # Donate 7 | -------------------------------------------------------------------------------- /content/pages/home.md: -------------------------------------------------------------------------------- 1 | Title: LPIC 1 study guide in plain English 2 | Date: 2015-12-25 12:20 3 | Category: other 4 | save_as: index.html 5 | Tags: test 6 | 7 | # Free Linux book, lessons and videos; LPIC 1 in plain English 8 | 9 | This book is originally released as a part of a series of free video tutorials for LPIC1 created by Jadi (in Persian language). But it is also possible to use it as a reference for self-study to prepare for LPIC1-101 & LPIC-102 exam. 10 | 11 | If you want to download Farsi LPIC 101 & LPIC 102 exam videos [use this torrent magnet link](magnet:?xt=urn:btih:e003aba9b19bee27dab9085f79afb4ed88d856b2&dn=Jadi-net-LPIC1-Exam101and102-version1.0-July2016&tr=udp%3a%2f%2fdenis.stalker.h3q.com%3a6969%2fannounce&tr=http%3a%2f%2fopen.tracker.thepiratebay.org%2fannounce&tr=http%3a%2f%2fdenis.stalker.h3q.com%3a6969%2fannounce&tr=http%3a%2f%2fwww.sumotracker.com%2fannounce&tr=http%3a%2f%2fwww.torrent-downloads.to%3a2710%2fannounce) 12 | 13 | Latest versions of this be book is always available at **http://j.mp/jadilpic1** 14 | 15 | I've tried to write a short, easy to understand but still comprehensive exam guide. I'm not a native English speaker be ready for some possible language flaws. 16 | 17 | Enjoy! 18 | 19 | - Personal site: [Jadi.ir](http://jadi.ir) 20 | - Persian Weblog: [jadi.net](http://jadi.net) 21 | - twitter: [@jadi](http://twitter.com/jadi) 22 | 23 | Donations? [http://jadi.ir/support-donate/](http://jadi.ir/support-donate/) :D 24 | -------------------------------------------------------------------------------- /develop_server.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | ## 3 | # This section should match your Makefile 4 | ## 5 | PY=${PY:-python} 6 | PELICAN=${PELICAN:-pelican} 7 | PELICANOPTS= 8 | 9 | BASEDIR=$(pwd) 10 | INPUTDIR=$BASEDIR/content 11 | OUTPUTDIR=$BASEDIR/output 12 | CONFFILE=$BASEDIR/pelicanconf.py 13 | 14 | ### 15 | # Don't change stuff below here unless you are sure 16 | ### 17 | 18 | SRV_PID=$BASEDIR/srv.pid 19 | PELICAN_PID=$BASEDIR/pelican.pid 20 | 21 | function usage(){ 22 | echo "usage: $0 (stop) (start) (restart) [port]" 23 | echo "This starts Pelican in debug and reload mode and then launches" 24 | echo "an HTTP server to help site development. It doesn't read" 25 | echo "your Pelican settings, so if you edit any paths in your Makefile" 26 | echo "you will need to edit your settings as well." 27 | exit 3 28 | } 29 | 30 | function alive() { 31 | kill -0 $1 >/dev/null 2>&1 32 | } 33 | 34 | function shut_down(){ 35 | PID=$(cat $SRV_PID) 36 | if [[ $? -eq 0 ]]; then 37 | if alive $PID; then 38 | echo "Stopping HTTP server" 39 | kill $PID 40 | else 41 | echo "Stale PID, deleting" 42 | fi 43 | rm $SRV_PID 44 | else 45 | echo "HTTP server PIDFile not found" 46 | fi 47 | 48 | PID=$(cat $PELICAN_PID) 49 | if [[ $? -eq 0 ]]; then 50 | if alive $PID; then 51 | echo "Killing Pelican" 52 | kill $PID 53 | else 54 | echo "Stale PID, deleting" 55 | fi 56 | rm $PELICAN_PID 57 | else 58 | echo "Pelican PIDFile not found" 59 | fi 60 | } 61 | 62 | function start_up(){ 63 | local port=$1 64 | echo "Starting up Pelican and HTTP server" 65 | shift 66 | $PELICAN --debug --autoreload -r $INPUTDIR -o $OUTPUTDIR -s $CONFFILE $PELICANOPTS & 67 | pelican_pid=$! 68 | echo $pelican_pid > $PELICAN_PID 69 | cd $OUTPUTDIR 70 | $PY -m pelican.server $port & 71 | srv_pid=$! 72 | echo $srv_pid > $SRV_PID 73 | cd $BASEDIR 74 | sleep 1 75 | if ! alive $pelican_pid ; then 76 | echo "Pelican didn't start. Is the Pelican package installed?" 77 | return 1 78 | elif ! alive $srv_pid ; then 79 | echo "The HTTP server didn't start. Is there another service using port" $port "?" 80 | return 1 81 | fi 82 | echo 'Pelican and HTTP server processes now running in background.' 83 | } 84 | 85 | ### 86 | # MAIN 87 | ### 88 | [[ ($# -eq 0) || ($# -gt 2) ]] && usage 89 | port='' 90 | [[ $# -eq 2 ]] && port=$2 91 | 92 | if [[ $1 == "stop" ]]; then 93 | shut_down 94 | elif [[ $1 == "restart" ]]; then 95 | shut_down 96 | start_up $port 97 | elif [[ $1 == "start" ]]; then 98 | if ! start_up $port; then 99 | shut_down 100 | fi 101 | else 102 | usage 103 | fi 104 | -------------------------------------------------------------------------------- /fabfile.py: -------------------------------------------------------------------------------- 1 | from fabric.api import * 2 | import fabric.contrib.project as project 3 | import os 4 | import shutil 5 | import sys 6 | import SocketServer 7 | 8 | from pelican.server import ComplexHTTPRequestHandler 9 | 10 | # Local path configuration (can be absolute or relative to fabfile) 11 | env.deploy_path = 'output' 12 | DEPLOY_PATH = env.deploy_path 13 | 14 | # Remote server configuration 15 | production = 'root@localhost:22' 16 | dest_path = '/var/www' 17 | 18 | # Rackspace Cloud Files configuration settings 19 | env.cloudfiles_username = 'my_rackspace_username' 20 | env.cloudfiles_api_key = 'my_rackspace_api_key' 21 | env.cloudfiles_container = 'my_cloudfiles_container' 22 | 23 | # Github Pages configuration 24 | env.github_pages_branch = "gh-pages" 25 | 26 | # Port for `serve` 27 | PORT = 8000 28 | 29 | def clean(): 30 | """Remove generated files""" 31 | if os.path.isdir(DEPLOY_PATH): 32 | shutil.rmtree(DEPLOY_PATH) 33 | os.makedirs(DEPLOY_PATH) 34 | 35 | def build(): 36 | """Build local version of site""" 37 | local('pelican -s pelicanconf.py') 38 | 39 | def rebuild(): 40 | """`clean` then `build`""" 41 | clean() 42 | build() 43 | 44 | def regenerate(): 45 | """Automatically regenerate site upon file modification""" 46 | local('pelican -r -s pelicanconf.py') 47 | 48 | def serve(): 49 | """Serve site at http://localhost:8000/""" 50 | os.chdir(env.deploy_path) 51 | 52 | class AddressReuseTCPServer(SocketServer.TCPServer): 53 | allow_reuse_address = True 54 | 55 | server = AddressReuseTCPServer(('', PORT), ComplexHTTPRequestHandler) 56 | 57 | sys.stderr.write('Serving on port {0} ...\n'.format(PORT)) 58 | server.serve_forever() 59 | 60 | def reserve(): 61 | """`build`, then `serve`""" 62 | build() 63 | serve() 64 | 65 | def preview(): 66 | """Build production version of site""" 67 | local('pelican -s publishconf.py') 68 | 69 | def cf_upload(): 70 | """Publish to Rackspace Cloud Files""" 71 | rebuild() 72 | with lcd(DEPLOY_PATH): 73 | local('swift -v -A https://auth.api.rackspacecloud.com/v1.0 ' 74 | '-U {cloudfiles_username} ' 75 | '-K {cloudfiles_api_key} ' 76 | 'upload -c {cloudfiles_container} .'.format(**env)) 77 | 78 | @hosts(production) 79 | def publish(): 80 | """Publish to production via rsync""" 81 | local('pelican -s publishconf.py') 82 | project.rsync_project( 83 | remote_dir=dest_path, 84 | exclude=".DS_Store", 85 | local_dir=DEPLOY_PATH.rstrip('/') + '/', 86 | delete=True, 87 | extra_opts='-c', 88 | ) 89 | 90 | def gh_pages(): 91 | """Publish to GitHub Pages""" 92 | rebuild() 93 | local("ghp-import -b {github_pages_branch} {deploy_path}".format(**env)) 94 | local("git push origin {github_pages_branch}".format(**env)) 95 | -------------------------------------------------------------------------------- /notes.txt: -------------------------------------------------------------------------------- 1 | pelican content -o output -s pelicanconf.py 2 | ghp-import output 3 | git push origin gh-pages 4 | -------------------------------------------------------------------------------- /output/theme/css/pygments/autumn.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #aaaaaa; font-style: italic } /* Comment */ 4 | .highlight pre .err { color: #FF0000; background-color: #FFAAAA } /* Error */ 5 | .highlight pre .k { color: #0000aa } /* Keyword */ 6 | .highlight pre .cm { color: #aaaaaa; font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #4c8317 } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #aaaaaa; font-style: italic } /* Comment.Single */ 9 | .highlight pre .cs { color: #0000aa; font-style: italic } /* Comment.Special */ 10 | .highlight pre .gd { color: #aa0000 } /* Generic.Deleted */ 11 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 12 | .highlight pre .gr { color: #aa0000 } /* Generic.Error */ 13 | .highlight pre .gh { color: #000080; font-weight: bold } /* Generic.Heading */ 14 | .highlight pre .gi { color: #00aa00 } /* Generic.Inserted */ 15 | .highlight pre .go { color: #888888 } /* Generic.Output */ 16 | .highlight pre .gp { color: #555555 } /* Generic.Prompt */ 17 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 18 | .highlight pre .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ 19 | .highlight pre .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .highlight pre .kc { color: #0000aa } /* Keyword.Constant */ 21 | .highlight pre .kd { color: #0000aa } /* Keyword.Declaration */ 22 | .highlight pre .kn { color: #0000aa } /* Keyword.Namespace */ 23 | .highlight pre .kp { color: #0000aa } /* Keyword.Pseudo */ 24 | .highlight pre .kr { color: #0000aa } /* Keyword.Reserved */ 25 | .highlight pre .kt { color: #00aaaa } /* Keyword.Type */ 26 | .highlight pre .m { color: #009999 } /* Literal.Number */ 27 | .highlight pre .s { color: #aa5500 } /* Literal.String */ 28 | .highlight pre .na { color: #1e90ff } /* Name.Attribute */ 29 | .highlight pre .nb { color: #00aaaa } /* Name.Builtin */ 30 | .highlight pre .nc { color: #00aa00; text-decoration: underline } /* Name.Class */ 31 | .highlight pre .no { color: #aa0000 } /* Name.Constant */ 32 | .highlight pre .nd { color: #888888 } /* Name.Decorator */ 33 | .highlight pre .ni { color: #880000; font-weight: bold } /* Name.Entity */ 34 | .highlight pre .nf { color: #00aa00 } /* Name.Function */ 35 | .highlight pre .nn { color: #00aaaa; text-decoration: underline } /* Name.Namespace */ 36 | .highlight pre .nt { color: #1e90ff; font-weight: bold } /* Name.Tag */ 37 | .highlight pre .nv { color: #aa0000 } /* Name.Variable */ 38 | .highlight pre .ow { color: #0000aa } /* Operator.Word */ 39 | .highlight pre .w { color: #bbbbbb } /* Text.Whitespace */ 40 | .highlight pre .mb { color: #009999 } /* Literal.Number.Bin */ 41 | .highlight pre .mf { color: #009999 } /* Literal.Number.Float */ 42 | .highlight pre .mh { color: #009999 } /* Literal.Number.Hex */ 43 | .highlight pre .mi { color: #009999 } /* Literal.Number.Integer */ 44 | .highlight pre .mo { color: #009999 } /* Literal.Number.Oct */ 45 | .highlight pre .sb { color: #aa5500 } /* Literal.String.Backtick */ 46 | .highlight pre .sc { color: #aa5500 } /* Literal.String.Char */ 47 | .highlight pre .sd { color: #aa5500 } /* Literal.String.Doc */ 48 | .highlight pre .s2 { color: #aa5500 } /* Literal.String.Double */ 49 | .highlight pre .se { color: #aa5500 } /* Literal.String.Escape */ 50 | .highlight pre .sh { color: #aa5500 } /* Literal.String.Heredoc */ 51 | .highlight pre .si { color: #aa5500 } /* Literal.String.Interpol */ 52 | .highlight pre .sx { color: #aa5500 } /* Literal.String.Other */ 53 | .highlight pre .sr { color: #009999 } /* Literal.String.Regex */ 54 | .highlight pre .s1 { color: #aa5500 } /* Literal.String.Single */ 55 | .highlight pre .ss { color: #0000aa } /* Literal.String.Symbol */ 56 | .highlight pre .bp { color: #00aaaa } /* Name.Builtin.Pseudo */ 57 | .highlight pre .vc { color: #aa0000 } /* Name.Variable.Class */ 58 | .highlight pre .vg { color: #aa0000 } /* Name.Variable.Global */ 59 | .highlight pre .vi { color: #aa0000 } /* Name.Variable.Instance */ 60 | .highlight pre .il { color: #009999 } /* Literal.Number.Integer.Long */ 61 | -------------------------------------------------------------------------------- /output/theme/css/pygments/borland.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #008800; font-style: italic } /* Comment */ 4 | .highlight pre .err { color: #a61717; background-color: #e3d2d2 } /* Error */ 5 | .highlight pre .k { color: #000080; font-weight: bold } /* Keyword */ 6 | .highlight pre .cm { color: #008800; font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #008080 } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #008800; font-style: italic } /* Comment.Single */ 9 | .highlight pre .cs { color: #008800; font-weight: bold } /* Comment.Special */ 10 | .highlight pre .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ 11 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 12 | .highlight pre .gr { color: #aa0000 } /* Generic.Error */ 13 | .highlight pre .gh { color: #999999 } /* Generic.Heading */ 14 | .highlight pre .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ 15 | .highlight pre .go { color: #888888 } /* Generic.Output */ 16 | .highlight pre .gp { color: #555555 } /* Generic.Prompt */ 17 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 18 | .highlight pre .gu { color: #aaaaaa } /* Generic.Subheading */ 19 | .highlight pre .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .highlight pre .kc { color: #000080; font-weight: bold } /* Keyword.Constant */ 21 | .highlight pre .kd { color: #000080; font-weight: bold } /* Keyword.Declaration */ 22 | .highlight pre .kn { color: #000080; font-weight: bold } /* Keyword.Namespace */ 23 | .highlight pre .kp { color: #000080; font-weight: bold } /* Keyword.Pseudo */ 24 | .highlight pre .kr { color: #000080; font-weight: bold } /* Keyword.Reserved */ 25 | .highlight pre .kt { color: #000080; font-weight: bold } /* Keyword.Type */ 26 | .highlight pre .m { color: #0000FF } /* Literal.Number */ 27 | .highlight pre .s { color: #0000FF } /* Literal.String */ 28 | .highlight pre .na { color: #FF0000 } /* Name.Attribute */ 29 | .highlight pre .nt { color: #000080; font-weight: bold } /* Name.Tag */ 30 | .highlight pre .ow { font-weight: bold } /* Operator.Word */ 31 | .highlight pre .w { color: #bbbbbb } /* Text.Whitespace */ 32 | .highlight pre .mb { color: #0000FF } /* Literal.Number.Bin */ 33 | .highlight pre .mf { color: #0000FF } /* Literal.Number.Float */ 34 | .highlight pre .mh { color: #0000FF } /* Literal.Number.Hex */ 35 | .highlight pre .mi { color: #0000FF } /* Literal.Number.Integer */ 36 | .highlight pre .mo { color: #0000FF } /* Literal.Number.Oct */ 37 | .highlight pre .sb { color: #0000FF } /* Literal.String.Backtick */ 38 | .highlight pre .sc { color: #800080 } /* Literal.String.Char */ 39 | .highlight pre .sd { color: #0000FF } /* Literal.String.Doc */ 40 | .highlight pre .s2 { color: #0000FF } /* Literal.String.Double */ 41 | .highlight pre .se { color: #0000FF } /* Literal.String.Escape */ 42 | .highlight pre .sh { color: #0000FF } /* Literal.String.Heredoc */ 43 | .highlight pre .si { color: #0000FF } /* Literal.String.Interpol */ 44 | .highlight pre .sx { color: #0000FF } /* Literal.String.Other */ 45 | .highlight pre .sr { color: #0000FF } /* Literal.String.Regex */ 46 | .highlight pre .s1 { color: #0000FF } /* Literal.String.Single */ 47 | .highlight pre .ss { color: #0000FF } /* Literal.String.Symbol */ 48 | .highlight pre .il { color: #0000FF } /* Literal.Number.Integer.Long */ 49 | -------------------------------------------------------------------------------- /output/theme/css/pygments/bw.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { font-style: italic } /* Comment */ 4 | .highlight pre .err { border: 1px solid #FF0000 } /* Error */ 5 | .highlight pre .k { font-weight: bold } /* Keyword */ 6 | .highlight pre .cm { font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .c1 { font-style: italic } /* Comment.Single */ 8 | .highlight pre .cs { font-style: italic } /* Comment.Special */ 9 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 10 | .highlight pre .gh { font-weight: bold } /* Generic.Heading */ 11 | .highlight pre .gp { font-weight: bold } /* Generic.Prompt */ 12 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 13 | .highlight pre .gu { font-weight: bold } /* Generic.Subheading */ 14 | .highlight pre .kc { font-weight: bold } /* Keyword.Constant */ 15 | .highlight pre .kd { font-weight: bold } /* Keyword.Declaration */ 16 | .highlight pre .kn { font-weight: bold } /* Keyword.Namespace */ 17 | .highlight pre .kr { font-weight: bold } /* Keyword.Reserved */ 18 | .highlight pre .s { font-style: italic } /* Literal.String */ 19 | .highlight pre .nc { font-weight: bold } /* Name.Class */ 20 | .highlight pre .ni { font-weight: bold } /* Name.Entity */ 21 | .highlight pre .ne { font-weight: bold } /* Name.Exception */ 22 | .highlight pre .nn { font-weight: bold } /* Name.Namespace */ 23 | .highlight pre .nt { font-weight: bold } /* Name.Tag */ 24 | .highlight pre .ow { font-weight: bold } /* Operator.Word */ 25 | .highlight pre .sb { font-style: italic } /* Literal.String.Backtick */ 26 | .highlight pre .sc { font-style: italic } /* Literal.String.Char */ 27 | .highlight pre .sd { font-style: italic } /* Literal.String.Doc */ 28 | .highlight pre .s2 { font-style: italic } /* Literal.String.Double */ 29 | .highlight pre .se { font-weight: bold; font-style: italic } /* Literal.String.Escape */ 30 | .highlight pre .sh { font-style: italic } /* Literal.String.Heredoc */ 31 | .highlight pre .si { font-weight: bold; font-style: italic } /* Literal.String.Interpol */ 32 | .highlight pre .sx { font-style: italic } /* Literal.String.Other */ 33 | .highlight pre .sr { font-style: italic } /* Literal.String.Regex */ 34 | .highlight pre .s1 { font-style: italic } /* Literal.String.Single */ 35 | .highlight pre .ss { font-style: italic } /* Literal.String.Symbol */ 36 | -------------------------------------------------------------------------------- /output/theme/css/pygments/github.css: -------------------------------------------------------------------------------- 1 | .hll { background-color: #ffffcc } 2 | .c { color: #999988; font-style: italic } /* Comment */ 3 | .err { color: #a61717; background-color: #e3d2d2 } /* Error */ 4 | .k { color: #000000; font-weight: bold } /* Keyword */ 5 | .o { color: #000000; font-weight: bold } /* Operator */ 6 | .cm { color: #999988; font-style: italic } /* Comment.Multiline */ 7 | .cp { color: #999999; font-weight: bold; font-style: italic } /* Comment.Preproc */ 8 | .c1 { color: #999988; font-style: italic } /* Comment.Single */ 9 | .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */ 10 | .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ 11 | .ge { color: #000000; font-style: italic } /* Generic.Emph */ 12 | .gr { color: #aa0000 } /* Generic.Error */ 13 | .gh { color: #999999 } /* Generic.Heading */ 14 | .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ 15 | .go { color: #888888 } /* Generic.Output */ 16 | .gp { color: #555555 } /* Generic.Prompt */ 17 | .gs { font-weight: bold } /* Generic.Strong */ 18 | .gu { color: #aaaaaa } /* Generic.Subheading */ 19 | .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .kc { color: #000000; font-weight: bold } /* Keyword.Constant */ 21 | .kd { color: #000000; font-weight: bold } /* Keyword.Declaration */ 22 | .kn { color: #000000; font-weight: bold } /* Keyword.Namespace */ 23 | .kp { color: #000000; font-weight: bold } /* Keyword.Pseudo */ 24 | .kr { color: #000000; font-weight: bold } /* Keyword.Reserved */ 25 | .kt { color: #445588; font-weight: bold } /* Keyword.Type */ 26 | .m { color: #009999 } /* Literal.Number */ 27 | .s { color: #d01040 } /* Literal.String */ 28 | .na { color: #008080 } /* Name.Attribute */ 29 | .nb { color: #0086B3 } /* Name.Builtin */ 30 | .nc { color: #445588; font-weight: bold } /* Name.Class */ 31 | .no { color: #008080 } /* Name.Constant */ 32 | .nd { color: #3c5d5d; font-weight: bold } /* Name.Decorator */ 33 | .ni { color: #800080 } /* Name.Entity */ 34 | .ne { color: #990000; font-weight: bold } /* Name.Exception */ 35 | .nf { color: #990000; font-weight: bold } /* Name.Function */ 36 | .nl { color: #990000; font-weight: bold } /* Name.Label */ 37 | .nn { color: #555555 } /* Name.Namespace */ 38 | .nt { color: #000080 } /* Name.Tag */ 39 | .nv { color: #008080 } /* Name.Variable */ 40 | .ow { color: #000000; font-weight: bold } /* Operator.Word */ 41 | .w { color: #bbbbbb } /* Text.Whitespace */ 42 | .mf { color: #009999 } /* Literal.Number.Float */ 43 | .mh { color: #009999 } /* Literal.Number.Hex */ 44 | .mi { color: #009999 } /* Literal.Number.Integer */ 45 | .mo { color: #009999 } /* Literal.Number.Oct */ 46 | .sb { color: #d01040 } /* Literal.String.Backtick */ 47 | .sc { color: #d01040 } /* Literal.String.Char */ 48 | .sd { color: #d01040 } /* Literal.String.Doc */ 49 | .s2 { color: #d01040 } /* Literal.String.Double */ 50 | .se { color: #d01040 } /* Literal.String.Escape */ 51 | .sh { color: #d01040 } /* Literal.String.Heredoc */ 52 | .si { color: #d01040 } /* Literal.String.Interpol */ 53 | .sx { color: #d01040 } /* Literal.String.Other */ 54 | .sr { color: #009926 } /* Literal.String.Regex */ 55 | .s1 { color: #d01040 } /* Literal.String.Single */ 56 | .ss { color: #990073 } /* Literal.String.Symbol */ 57 | .bp { color: #999999 } /* Name.Builtin.Pseudo */ 58 | .vc { color: #008080 } /* Name.Variable.Class */ 59 | .vg { color: #008080 } /* Name.Variable.Global */ 60 | .vi { color: #008080 } /* Name.Variable.Instance */ 61 | .il { color: #009999 } /* Literal.Number.Integer.Long */ 62 | -------------------------------------------------------------------------------- /output/theme/css/pygments/igor.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #FF0000; font-style: italic } /* Comment */ 4 | .highlight pre .k { color: #0000FF } /* Keyword */ 5 | .highlight pre .cm { color: #FF0000; font-style: italic } /* Comment.Multiline */ 6 | .highlight pre .cp { color: #FF0000; font-style: italic } /* Comment.Preproc */ 7 | .highlight pre .c1 { color: #FF0000; font-style: italic } /* Comment.Single */ 8 | .highlight pre .cs { color: #FF0000; font-style: italic } /* Comment.Special */ 9 | .highlight pre .kc { color: #0000FF } /* Keyword.Constant */ 10 | .highlight pre .kd { color: #0000FF } /* Keyword.Declaration */ 11 | .highlight pre .kn { color: #0000FF } /* Keyword.Namespace */ 12 | .highlight pre .kp { color: #0000FF } /* Keyword.Pseudo */ 13 | .highlight pre .kr { color: #0000FF } /* Keyword.Reserved */ 14 | .highlight pre .kt { color: #0000FF } /* Keyword.Type */ 15 | .highlight pre .s { color: #009C00 } /* Literal.String */ 16 | .highlight pre .nc { color: #007575 } /* Name.Class */ 17 | .highlight pre .nd { color: #CC00A3 } /* Name.Decorator */ 18 | .highlight pre .nf { color: #C34E00 } /* Name.Function */ 19 | .highlight pre .sb { color: #009C00 } /* Literal.String.Backtick */ 20 | .highlight pre .sc { color: #009C00 } /* Literal.String.Char */ 21 | .highlight pre .sd { color: #009C00 } /* Literal.String.Doc */ 22 | .highlight pre .s2 { color: #009C00 } /* Literal.String.Double */ 23 | .highlight pre .se { color: #009C00 } /* Literal.String.Escape */ 24 | .highlight pre .sh { color: #009C00 } /* Literal.String.Heredoc */ 25 | .highlight pre .si { color: #009C00 } /* Literal.String.Interpol */ 26 | .highlight pre .sx { color: #009C00 } /* Literal.String.Other */ 27 | .highlight pre .sr { color: #009C00 } /* Literal.String.Regex */ 28 | .highlight pre .s1 { color: #009C00 } /* Literal.String.Single */ 29 | .highlight pre .ss { color: #009C00 } /* Literal.String.Symbol */ 30 | -------------------------------------------------------------------------------- /output/theme/css/pygments/monokai.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #49483e } 2 | .highlight pre { background: #272822; color: #f8f8f2 } 3 | .highlight pre .c { color: #75715e } /* Comment */ 4 | .highlight pre .err { color: #960050; background-color: #1e0010 } /* Error */ 5 | .highlight pre .k { color: #66d9ef } /* Keyword */ 6 | .highlight pre .l { color: #ae81ff } /* Literal */ 7 | .highlight pre .n { color: #f8f8f2 } /* Name */ 8 | .highlight pre .o { color: #f92672 } /* Operator */ 9 | .highlight pre .p { color: #f8f8f2 } /* Punctuation */ 10 | .highlight pre .cm { color: #75715e } /* Comment.Multiline */ 11 | .highlight pre .cp { color: #75715e } /* Comment.Preproc */ 12 | .highlight pre .c1 { color: #75715e } /* Comment.Single */ 13 | .highlight pre .cs { color: #75715e } /* Comment.Special */ 14 | .highlight pre .gd { color: #f92672 } /* Generic.Deleted */ 15 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 16 | .highlight pre .gi { color: #a6e22e } /* Generic.Inserted */ 17 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 18 | .highlight pre .gu { color: #75715e } /* Generic.Subheading */ 19 | .highlight pre .kc { color: #66d9ef } /* Keyword.Constant */ 20 | .highlight pre .kd { color: #66d9ef } /* Keyword.Declaration */ 21 | .highlight pre .kn { color: #f92672 } /* Keyword.Namespace */ 22 | .highlight pre .kp { color: #66d9ef } /* Keyword.Pseudo */ 23 | .highlight pre .kr { color: #66d9ef } /* Keyword.Reserved */ 24 | .highlight pre .kt { color: #66d9ef } /* Keyword.Type */ 25 | .highlight pre .ld { color: #e6db74 } /* Literal.Date */ 26 | .highlight pre .m { color: #ae81ff } /* Literal.Number */ 27 | .highlight pre .s { color: #e6db74 } /* Literal.String */ 28 | .highlight pre .na { color: #a6e22e } /* Name.Attribute */ 29 | .highlight pre .nb { color: #f8f8f2 } /* Name.Builtin */ 30 | .highlight pre .nc { color: #a6e22e } /* Name.Class */ 31 | .highlight pre .no { color: #66d9ef } /* Name.Constant */ 32 | .highlight pre .nd { color: #a6e22e } /* Name.Decorator */ 33 | .highlight pre .ni { color: #f8f8f2 } /* Name.Entity */ 34 | .highlight pre .ne { color: #a6e22e } /* Name.Exception */ 35 | .highlight pre .nf { color: #a6e22e } /* Name.Function */ 36 | .highlight pre .nl { color: #f8f8f2 } /* Name.Label */ 37 | .highlight pre .nn { color: #f8f8f2 } /* Name.Namespace */ 38 | .highlight pre .nx { color: #a6e22e } /* Name.Other */ 39 | .highlight pre .py { color: #f8f8f2 } /* Name.Property */ 40 | .highlight pre .nt { color: #f92672 } /* Name.Tag */ 41 | .highlight pre .nv { color: #f8f8f2 } /* Name.Variable */ 42 | .highlight pre .ow { color: #f92672 } /* Operator.Word */ 43 | .highlight pre .w { color: #f8f8f2 } /* Text.Whitespace */ 44 | .highlight pre .mb { color: #ae81ff } /* Literal.Number.Bin */ 45 | .highlight pre .mf { color: #ae81ff } /* Literal.Number.Float */ 46 | .highlight pre .mh { color: #ae81ff } /* Literal.Number.Hex */ 47 | .highlight pre .mi { color: #ae81ff } /* Literal.Number.Integer */ 48 | .highlight pre .mo { color: #ae81ff } /* Literal.Number.Oct */ 49 | .highlight pre .sb { color: #e6db74 } /* Literal.String.Backtick */ 50 | .highlight pre .sc { color: #e6db74 } /* Literal.String.Char */ 51 | .highlight pre .sd { color: #e6db74 } /* Literal.String.Doc */ 52 | .highlight pre .s2 { color: #e6db74 } /* Literal.String.Double */ 53 | .highlight pre .se { color: #ae81ff } /* Literal.String.Escape */ 54 | .highlight pre .sh { color: #e6db74 } /* Literal.String.Heredoc */ 55 | .highlight pre .si { color: #e6db74 } /* Literal.String.Interpol */ 56 | .highlight pre .sx { color: #e6db74 } /* Literal.String.Other */ 57 | .highlight pre .sr { color: #e6db74 } /* Literal.String.Regex */ 58 | .highlight pre .s1 { color: #e6db74 } /* Literal.String.Single */ 59 | .highlight pre .ss { color: #e6db74 } /* Literal.String.Symbol */ 60 | .highlight pre .bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */ 61 | .highlight pre .vc { color: #f8f8f2 } /* Name.Variable.Class */ 62 | .highlight pre .vg { color: #f8f8f2 } /* Name.Variable.Global */ 63 | .highlight pre .vi { color: #f8f8f2 } /* Name.Variable.Instance */ 64 | .highlight pre .il { color: #ae81ff } /* Literal.Number.Integer.Long */ 65 | -------------------------------------------------------------------------------- /output/theme/css/pygments/rrt.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #0000ff } 2 | .highlight pre { background: #000000; } 3 | .highlight pre .c { color: #00ff00 } /* Comment */ 4 | .highlight pre .k { color: #ff0000 } /* Keyword */ 5 | .highlight pre .cm { color: #00ff00 } /* Comment.Multiline */ 6 | .highlight pre .cp { color: #e5e5e5 } /* Comment.Preproc */ 7 | .highlight pre .c1 { color: #00ff00 } /* Comment.Single */ 8 | .highlight pre .cs { color: #00ff00 } /* Comment.Special */ 9 | .highlight pre .kc { color: #ff0000 } /* Keyword.Constant */ 10 | .highlight pre .kd { color: #ff0000 } /* Keyword.Declaration */ 11 | .highlight pre .kn { color: #ff0000 } /* Keyword.Namespace */ 12 | .highlight pre .kp { color: #ff0000 } /* Keyword.Pseudo */ 13 | .highlight pre .kr { color: #ff0000 } /* Keyword.Reserved */ 14 | .highlight pre .kt { color: #ee82ee } /* Keyword.Type */ 15 | .highlight pre .s { color: #87ceeb } /* Literal.String */ 16 | .highlight pre .no { color: #7fffd4 } /* Name.Constant */ 17 | .highlight pre .nf { color: #ffff00 } /* Name.Function */ 18 | .highlight pre .nv { color: #eedd82 } /* Name.Variable */ 19 | .highlight pre .sb { color: #87ceeb } /* Literal.String.Backtick */ 20 | .highlight pre .sc { color: #87ceeb } /* Literal.String.Char */ 21 | .highlight pre .sd { color: #87ceeb } /* Literal.String.Doc */ 22 | .highlight pre .s2 { color: #87ceeb } /* Literal.String.Double */ 23 | .highlight pre .se { color: #87ceeb } /* Literal.String.Escape */ 24 | .highlight pre .sh { color: #87ceeb } /* Literal.String.Heredoc */ 25 | .highlight pre .si { color: #87ceeb } /* Literal.String.Interpol */ 26 | .highlight pre .sx { color: #87ceeb } /* Literal.String.Other */ 27 | .highlight pre .sr { color: #87ceeb } /* Literal.String.Regex */ 28 | .highlight pre .s1 { color: #87ceeb } /* Literal.String.Single */ 29 | .highlight pre .ss { color: #87ceeb } /* Literal.String.Symbol */ 30 | .highlight pre .vc { color: #eedd82 } /* Name.Variable.Class */ 31 | .highlight pre .vg { color: #eedd82 } /* Name.Variable.Global */ 32 | .highlight pre .vi { color: #eedd82 } /* Name.Variable.Instance */ 33 | -------------------------------------------------------------------------------- /output/theme/css/pygments/vs.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #008000 } /* Comment */ 4 | .highlight pre .err { border: 1px solid #FF0000 } /* Error */ 5 | .highlight pre .k { color: #0000ff } /* Keyword */ 6 | .highlight pre .cm { color: #008000 } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #0000ff } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #008000 } /* Comment.Single */ 9 | .highlight pre .cs { color: #008000 } /* Comment.Special */ 10 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 11 | .highlight pre .gh { font-weight: bold } /* Generic.Heading */ 12 | .highlight pre .gp { font-weight: bold } /* Generic.Prompt */ 13 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 14 | .highlight pre .gu { font-weight: bold } /* Generic.Subheading */ 15 | .highlight pre .kc { color: #0000ff } /* Keyword.Constant */ 16 | .highlight pre .kd { color: #0000ff } /* Keyword.Declaration */ 17 | .highlight pre .kn { color: #0000ff } /* Keyword.Namespace */ 18 | .highlight pre .kp { color: #0000ff } /* Keyword.Pseudo */ 19 | .highlight pre .kr { color: #0000ff } /* Keyword.Reserved */ 20 | .highlight pre .kt { color: #2b91af } /* Keyword.Type */ 21 | .highlight pre .s { color: #a31515 } /* Literal.String */ 22 | .highlight pre .nc { color: #2b91af } /* Name.Class */ 23 | .highlight pre .ow { color: #0000ff } /* Operator.Word */ 24 | .highlight pre .sb { color: #a31515 } /* Literal.String.Backtick */ 25 | .highlight pre .sc { color: #a31515 } /* Literal.String.Char */ 26 | .highlight pre .sd { color: #a31515 } /* Literal.String.Doc */ 27 | .highlight pre .s2 { color: #a31515 } /* Literal.String.Double */ 28 | .highlight pre .se { color: #a31515 } /* Literal.String.Escape */ 29 | .highlight pre .sh { color: #a31515 } /* Literal.String.Heredoc */ 30 | .highlight pre .si { color: #a31515 } /* Literal.String.Interpol */ 31 | .highlight pre .sx { color: #a31515 } /* Literal.String.Other */ 32 | .highlight pre .sr { color: #a31515 } /* Literal.String.Regex */ 33 | .highlight pre .s1 { color: #a31515 } /* Literal.String.Single */ 34 | .highlight pre .ss { color: #a31515 } /* Literal.String.Symbol */ 35 | -------------------------------------------------------------------------------- /output/theme/css/pygments/xcode.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #177500 } /* Comment */ 4 | .highlight pre .err { color: #000000 } /* Error */ 5 | .highlight pre .k { color: #A90D91 } /* Keyword */ 6 | .highlight pre .l { color: #1C01CE } /* Literal */ 7 | .highlight pre .n { color: #000000 } /* Name */ 8 | .highlight pre .o { color: #000000 } /* Operator */ 9 | .highlight pre .cm { color: #177500 } /* Comment.Multiline */ 10 | .highlight pre .cp { color: #633820 } /* Comment.Preproc */ 11 | .highlight pre .c1 { color: #177500 } /* Comment.Single */ 12 | .highlight pre .cs { color: #177500 } /* Comment.Special */ 13 | .highlight pre .kc { color: #A90D91 } /* Keyword.Constant */ 14 | .highlight pre .kd { color: #A90D91 } /* Keyword.Declaration */ 15 | .highlight pre .kn { color: #A90D91 } /* Keyword.Namespace */ 16 | .highlight pre .kp { color: #A90D91 } /* Keyword.Pseudo */ 17 | .highlight pre .kr { color: #A90D91 } /* Keyword.Reserved */ 18 | .highlight pre .kt { color: #A90D91 } /* Keyword.Type */ 19 | .highlight pre .ld { color: #1C01CE } /* Literal.Date */ 20 | .highlight pre .m { color: #1C01CE } /* Literal.Number */ 21 | .highlight pre .s { color: #C41A16 } /* Literal.String */ 22 | .highlight pre .na { color: #836C28 } /* Name.Attribute */ 23 | .highlight pre .nb { color: #A90D91 } /* Name.Builtin */ 24 | .highlight pre .nc { color: #3F6E75 } /* Name.Class */ 25 | .highlight pre .no { color: #000000 } /* Name.Constant */ 26 | .highlight pre .nd { color: #000000 } /* Name.Decorator */ 27 | .highlight pre .ni { color: #000000 } /* Name.Entity */ 28 | .highlight pre .ne { color: #000000 } /* Name.Exception */ 29 | .highlight pre .nf { color: #000000 } /* Name.Function */ 30 | .highlight pre .nl { color: #000000 } /* Name.Label */ 31 | .highlight pre .nn { color: #000000 } /* Name.Namespace */ 32 | .highlight pre .nx { color: #000000 } /* Name.Other */ 33 | .highlight pre .py { color: #000000 } /* Name.Property */ 34 | .highlight pre .nt { color: #000000 } /* Name.Tag */ 35 | .highlight pre .nv { color: #000000 } /* Name.Variable */ 36 | .highlight pre .ow { color: #000000 } /* Operator.Word */ 37 | .highlight pre .mb { color: #1C01CE } /* Literal.Number.Bin */ 38 | .highlight pre .mf { color: #1C01CE } /* Literal.Number.Float */ 39 | .highlight pre .mh { color: #1C01CE } /* Literal.Number.Hex */ 40 | .highlight pre .mi { color: #1C01CE } /* Literal.Number.Integer */ 41 | .highlight pre .mo { color: #1C01CE } /* Literal.Number.Oct */ 42 | .highlight pre .sb { color: #C41A16 } /* Literal.String.Backtick */ 43 | .highlight pre .sc { color: #2300CE } /* Literal.String.Char */ 44 | .highlight pre .sd { color: #C41A16 } /* Literal.String.Doc */ 45 | .highlight pre .s2 { color: #C41A16 } /* Literal.String.Double */ 46 | .highlight pre .se { color: #C41A16 } /* Literal.String.Escape */ 47 | .highlight pre .sh { color: #C41A16 } /* Literal.String.Heredoc */ 48 | .highlight pre .si { color: #C41A16 } /* Literal.String.Interpol */ 49 | .highlight pre .sx { color: #C41A16 } /* Literal.String.Other */ 50 | .highlight pre .sr { color: #C41A16 } /* Literal.String.Regex */ 51 | .highlight pre .s1 { color: #C41A16 } /* Literal.String.Single */ 52 | .highlight pre .ss { color: #C41A16 } /* Literal.String.Symbol */ 53 | .highlight pre .bp { color: #5B269A } /* Name.Builtin.Pseudo */ 54 | .highlight pre .vc { color: #000000 } /* Name.Variable.Class */ 55 | .highlight pre .vg { color: #000000 } /* Name.Variable.Global */ 56 | .highlight pre .vi { color: #000000 } /* Name.Variable.Instance */ 57 | .highlight pre .il { color: #1C01CE } /* Literal.Number.Integer.Long */ 58 | -------------------------------------------------------------------------------- /output/theme/css/typogrify.css: -------------------------------------------------------------------------------- 1 | .caps {font-size:.92em;} 2 | .amp {color:#666; font-size:1.05em;font-family:"Warnock Pro", "Goudy Old Style","Palatino","Book Antiqua",serif; font-style:italic;} 3 | .dquo {margin-left:-.38em;} 4 | -------------------------------------------------------------------------------- /output/theme/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/output/theme/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /output/theme/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/output/theme/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /output/theme/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/output/theme/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /output/theme/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/output/theme/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /output/theme/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/output/theme/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /output/theme/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/output/theme/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /output/theme/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/output/theme/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /pelican.pid: -------------------------------------------------------------------------------- 1 | 11053 2 | -------------------------------------------------------------------------------- /pelicanconf.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # -*- coding: utf-8 -*- # 3 | from __future__ import unicode_literals 4 | 5 | AUTHOR = u'jadi' 6 | SITENAME = u'Linux Learner' 7 | SITESUBTITLE = u'Free LPIC 1 book, lessons and videos' 8 | SITEURL = u'http://linuxlearner.net' 9 | 10 | PATH = 'content' 11 | 12 | TIMEZONE = 'Europe/London' 13 | 14 | DEFAULT_LANG = u'en' 15 | 16 | # Feed generation is usually not desired when developing 17 | FEED_ALL_ATOM = None 18 | CATEGORY_FEED_ATOM = None 19 | TRANSLATION_FEED_ATOM = None 20 | AUTHOR_FEED_ATOM = None 21 | AUTHOR_FEED_RSS = None 22 | 23 | # Blogroll 24 | LINKS = (('Pelican', 'http://getpelican.com/'), 25 | ('Python.org', 'http://python.org/'), 26 | ('Jinja2', 'http://jinja.pocoo.org/'), 27 | ('You can modify those links in your config file', '#'),) 28 | 29 | # Social widget 30 | SOCIAL = (('You can add links in your config file', '#'), 31 | ('Another social link', '#'),) 32 | 33 | DEFAULT_PAGINATION = 10 34 | 35 | # Uncomment following line if you want document-relative URLs when developing 36 | RELATIVE_URLS = True 37 | ARTICLE_URL = '{category}/{slug}.html' 38 | ARTICLE_SAVE_AS = '{category}/{slug}.html' 39 | 40 | THEME = "themes/twitchy" 41 | #DISQUS_SITENAME = 'LinuxLearner' 42 | 43 | STATIC_PATHS = ['images', 'extra/CNAME'] 44 | EXTRA_PATH_METADATA = {'extra/CNAME': {'path': 'CNAME'},} 45 | DISPLAY_TAGS_INLINE = True 46 | #FEED_ALL_RSS = True 47 | #FEED_ALL_ATOM = True 48 | 49 | FEED_ALL_RSS = 'feeds/all.rss.xml' 50 | FEED_ALL_ATOM = 'feeds/all.atom.xml' 51 | 52 | PLUGIN_PATHS = ["plugins"] 53 | PLUGINS = ["tag_cloud"] 54 | 55 | DISPLAY_RECENT_POSTS_ON_MENU = True 56 | DISPLAY_PAGES_ON_MENU = False 57 | -------------------------------------------------------------------------------- /plugins/tag_cloud.py: -------------------------------------------------------------------------------- 1 | ''' 2 | tag_cloud 3 | =================================== 4 | 5 | This plugin generates a tag cloud from available tags 6 | ''' 7 | from __future__ import unicode_literals 8 | 9 | from collections import defaultdict 10 | from operator import itemgetter 11 | 12 | import logging 13 | import math 14 | import random 15 | 16 | from pelican import signals 17 | 18 | logger = logging.getLogger(__name__) 19 | 20 | 21 | def set_default_settings(settings): 22 | settings.setdefault('TAG_CLOUD_STEPS', 4) 23 | settings.setdefault('TAG_CLOUD_MAX_ITEMS', 100) 24 | settings.setdefault('TAG_CLOUD_SORTING', 'random') 25 | settings.setdefault('TAG_CLOUD_BADGE', False) 26 | 27 | 28 | def init_default_config(pelican): 29 | from pelican.settings import DEFAULT_CONFIG 30 | set_default_settings(DEFAULT_CONFIG) 31 | if(pelican): 32 | set_default_settings(pelican.settings) 33 | 34 | 35 | def generate_tag_cloud(generator): 36 | tag_cloud = defaultdict(int) 37 | for article in generator.articles: 38 | for tag in getattr(article, 'tags', []): 39 | tag_cloud[tag] += 1 40 | 41 | tag_cloud = sorted(tag_cloud.items(), key=itemgetter(1), reverse=True) 42 | tag_cloud = tag_cloud[:generator.settings.get('TAG_CLOUD_MAX_ITEMS')] 43 | 44 | tags = list(map(itemgetter(1), tag_cloud)) 45 | if tags: 46 | max_count = max(tags) 47 | steps = generator.settings.get('TAG_CLOUD_STEPS') 48 | 49 | # calculate word sizes 50 | def generate_tag(tag, count): 51 | tag = ( 52 | tag, 53 | int(math.floor(steps - (steps - 1) * math.log(count) 54 | / (math.log(max_count)or 1))) 55 | ) 56 | if generator.settings.get('TAG_CLOUD_BADGE'): 57 | tag += (count,) 58 | return tag 59 | 60 | tag_cloud = [ 61 | generate_tag(tag, count) 62 | for tag, count in tag_cloud 63 | ] 64 | 65 | sorting = generator.settings.get('TAG_CLOUD_SORTING') 66 | 67 | if sorting == 'alphabetically': 68 | tag_cloud.sort(key=lambda elem: elem[0].name) 69 | elif sorting == 'alphabetically-rev': 70 | tag_cloud.sort(key=lambda elem: elem[0].name, reverse=True) 71 | elif sorting == 'size': 72 | tag_cloud.sort(key=lambda elem: elem[1]) 73 | elif sorting == 'size-rev': 74 | tag_cloud.sort(key=lambda elem: elem[1], reverse=True) 75 | elif sorting == 'random': 76 | random.shuffle(tag_cloud) 77 | else: 78 | logger.warning("setting for TAG_CLOUD_SORTING not recognized: %s, " 79 | "falling back to 'random'", sorting) 80 | random.shuffle(tag_cloud) 81 | 82 | # make available in context 83 | generator.tag_cloud = tag_cloud 84 | generator._update_context(['tag_cloud']) 85 | 86 | 87 | def register(): 88 | signals.initialized.connect(init_default_config) 89 | signals.article_generator_finalized.connect(generate_tag_cloud) -------------------------------------------------------------------------------- /publish.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | pelican content 4 | ghp-import output 5 | git push origin gh-pages 6 | -------------------------------------------------------------------------------- /publishconf.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # -*- coding: utf-8 -*- # 3 | from __future__ import unicode_literals 4 | 5 | # This file is only used if you use `make publish` or 6 | # explicitly specify it as your config file. 7 | 8 | import os 9 | import sys 10 | sys.path.append(os.curdir) 11 | from pelicanconf import * 12 | 13 | SITEURL = '' 14 | RELATIVE_URLS = False 15 | 16 | FEED_ALL_ATOM = 'feeds/all.atom.xml' 17 | CATEGORY_FEED_ATOM = 'feeds/%s.atom.xml' 18 | 19 | DELETE_OUTPUT_DIRECTORY = True 20 | 21 | # Following items are often useful when publishing 22 | 23 | #DISQUS_SITENAME = "" 24 | #GOOGLE_ANALYTICS = "" 25 | -------------------------------------------------------------------------------- /srv.pid: -------------------------------------------------------------------------------- 1 | 11054 2 | -------------------------------------------------------------------------------- /themes/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .*~ 3 | *~ 4 | -------------------------------------------------------------------------------- /themes/dev-random/LICENSE.txt: -------------------------------------------------------------------------------- 1 | DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE 2 | Version 2, December 2004 3 | 4 | Copyright (C) 2004 Sam Hocevar 5 | 6 | Everyone is permitted to copy and distribute verbatim or modified 7 | copies of this license document, and changing it is allowed as long 8 | as the name is changed. 9 | 10 | DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE 11 | TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 12 | 13 | 0. You just DO WHAT THE FUCK YOU WANT TO. 14 | 15 | -------------------------------------------------------------------------------- /themes/dev-random/README.md: -------------------------------------------------------------------------------- 1 | # dev-random # 2 | 3 | 4 | 5 | ## Screenshot ## 6 | 7 | ![screenshot](screenshot.png) 8 | -------------------------------------------------------------------------------- /themes/dev-random/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/dev-random/screenshot.png -------------------------------------------------------------------------------- /themes/dev-random/static/CNAME: -------------------------------------------------------------------------------- 1 | linuxlearner.net 2 | -------------------------------------------------------------------------------- /themes/dev-random/static/css/skeleton.css: -------------------------------------------------------------------------------- 1 | 2 | article, section, 3 | header, footer, 4 | aside, nav { 5 | display: block; 6 | } 7 | 8 | body, .page { 9 | margin: 0; 10 | padding: 0; 11 | } 12 | 13 | .page { 14 | display: block; 15 | margin: 2% 4%; 16 | } 17 | 18 | .page-head, 19 | .page-footer { 20 | display: block; 21 | width: 100%; 22 | clear: both; 23 | } 24 | 25 | .page-content { 26 | display: block; 27 | float: right; 28 | margin-left: 1%; 29 | margin-right: 1%; 30 | width: 68%; 31 | } 32 | 33 | .page-sidebar { 34 | display: block; 35 | margin-left: 1%; 36 | margin-right: 1%; 37 | width: 28%; 38 | float: left; 39 | } 40 | 41 | @media screen and (min-width: 800px) { 42 | .page { margin: 5% 10%; } 43 | } 44 | 45 | @media screen and (max-width: 600px) { 46 | .page { margin: 0; } 47 | .page-content, 48 | .page-sidebar { 49 | width: 98%; 50 | clear: both; 51 | } 52 | } 53 | 54 | @media print { 55 | .page { margin: 0; } 56 | .page-content { 57 | width: 98%; 58 | clear: both; 59 | } 60 | .page-head, 61 | .page-footer, 62 | .page-sidebar { 63 | display: none; 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /themes/dev-random/static/img/corner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/dev-random/static/img/corner.png -------------------------------------------------------------------------------- /themes/dev-random/static/js/html5shiv.js: -------------------------------------------------------------------------------- 1 | /*! HTML5 Shiv pre3.5 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed 2 | Uncompressed source: https://github.com/aFarkas/html5shiv */ 3 | (function(a,b){function h(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function i(){var a=l.elements;return typeof a=="string"?a.split(" "):a}function j(a){var b={},c=a.createElement,f=a.createDocumentFragment,g=f();a.createElement=function(a){l.shivMethods||c(a);var f;return b[a]?f=b[a].cloneNode():e.test(a)?f=(b[a]=c(a)).cloneNode():f=c(a),f.canHaveChildren&&!d.test(a)?g.appendChild(f):f},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+i().join().replace(/\w+/g,function(a){return b[a]=c(a),g.createElement(a),'c("'+a+'")'})+");return n}")(l,g)}function k(a){var b;return a.documentShived?a:(l.shivCSS&&!f&&(b=!!h(a,"article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio{display:none}canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden]{display:none}audio[controls]{display:inline-block;*display:inline;*zoom:1}mark{background:#FF0;color:#000}")),g||(b=!j(a)),b&&(a.documentShived=b),a)}function p(a){var b,c=a.getElementsByTagName("*"),d=c.length,e=RegExp("^(?:"+i().join("|")+")$","i"),f=[];while(d--)b=c[d],e.test(b.nodeName)&&f.push(b.applyElement(q(b)));return f}function q(a){var b,c=a.attributes,d=c.length,e=a.ownerDocument.createElement(n+":"+a.nodeName);while(d--)b=c[d],b.specified&&e.setAttribute(b.nodeName,b.nodeValue);return e.style.cssText=a.style.cssText,e}function r(a){var b,c=a.split("{"),d=c.length,e=RegExp("(^|[\\s,>+~])("+i().join("|")+")(?=[[\\s,>+~#.:]|$)","gi"),f="$1"+n+"\\:$2";while(d--)b=c[d]=c[d].split("}"),b[b.length-1]=b[b.length-1].replace(e,f),c[d]=b.join("}");return c.join("{")}function s(a){var b=a.length;while(b--)a[b].removeNode()}function t(a){var b,c,d=a.namespaces,e=a.parentWindow;return!o||a.printShived?a:(typeof d[n]=="undefined"&&d.add(n),e.attachEvent("onbeforeprint",function(){var d,e,f,g=a.styleSheets,i=[],j=g.length,k=Array(j);while(j--)k[j]=g[j];while(f=k.pop())if(!f.disabled&&m.test(f.media)){for(d=f.imports,j=0,e=d.length;j",f="hidden"in c,f&&typeof injectElementWithStyles=="function"&&injectElementWithStyles("#modernizr{}",function(b){b.hidden=!0,f=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle).display=="none"}),g=c.childNodes.length==1||function(){try{b.createElement("a")}catch(a){return!0}var c=b.createDocumentFragment();return typeof c.cloneNode=="undefined"||typeof c.createDocumentFragment=="undefined"||typeof c.createElement=="undefined"}()})();var l={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:k};a.html5=l,k(b);var m=/^$|\b(?:all|print)\b/,n="html5shiv",o=!g&&function(){var c=b.documentElement;return typeof b.namespaces!="undefined"&&typeof b.parentWindow!="undefined"&&typeof c.applyElement!="undefined"&&typeof c.removeNode!="undefined"&&typeof a.attachEvent!="undefined"}();l.type+=" print",l.shivPrint=t,t(b)})(this,document) -------------------------------------------------------------------------------- /themes/dev-random/static/js/microTags.js: -------------------------------------------------------------------------------- 1 | 2 | var µTags = function(element, options) { 3 | this._el = element; 4 | this._children = element.childNodes; 5 | 6 | this._max_size = 3; 7 | this._min_size = 0.7; 8 | this._max_angle = 15; 9 | this._min_angle = -15; 10 | 11 | if (options != undefined) 12 | this._set_options(options); 13 | 14 | this._max_count = this._get_max_count(); 15 | this._set_sizes(); 16 | this._set_tilt(); 17 | } 18 | 19 | µTags.prototype.version = "0.1a" 20 | 21 | µTags.prototype._set_options = function(options) { 22 | var max_size = options['max-size'], 23 | min_size = options['min-size'], 24 | max_angle = options['max-angle'], 25 | min_angle = options['min-angle']; 26 | 27 | if ((max_size >= 1) && (max_size > min_size)) 28 | this._max_size = max_size; 29 | else 30 | console.error("µTags: option `max-size` must be >= 1 and > min-size"); 31 | 32 | if ((min_size > 0) && (min_size < max_size)) 33 | this._min_size = min_size; 34 | else 35 | console.error("µTags: option `min-size` must be > 0 and < max-size"); 36 | 37 | if (max_angle > min_angle) { 38 | this._max_angle = max_angle; 39 | this._min_angle = min_angle; 40 | } 41 | else 42 | console.error("µTags: option `max-angle` must be > `min-angle`"); 43 | 44 | } 45 | 46 | µTags.prototype.eachTag = function(callback) { 47 | var i, child, tag, count; 48 | for (i=0; i < this._children.length; i++) { 49 | child = this._children[i]; 50 | if (child.attributes != undefined) { 51 | window._c = child; 52 | count = parseInt(child.attributes["data-count"].value || "1"); 53 | callback(child, count); 54 | } 55 | } 56 | } 57 | 58 | µTags.prototype._get_max_count = function() { 59 | var max = 0; 60 | this.eachTag(function(element, count) { 61 | max = (max < count) ? count : max; 62 | }); 63 | return max; 64 | } 65 | 66 | µTags.prototype._set_sizes = function() { 67 | var size, 68 | max = this._max_size, 69 | min = this._min_size, 70 | max_count = this._max_count; 71 | 72 | this.eachTag(function(element, count) { 73 | size = (count * max / max_count); 74 | size = (size >= min) ? size : min; 75 | console.debug(element+ ': ' + count + ': ' + size ); 76 | element.style['fontSize'] = size + 'em'; 77 | }); 78 | } 79 | 80 | µTags.prototype._set_tilt = function() { 81 | var angle, 82 | max = this._max_angle, 83 | min = this._min_angle; 84 | this.eachTag(function(element, count) { 85 | angle = min + (Math.random() * (max - min)); 86 | element.style['transform'] = 'rotate(' + angle + 'deg)'; 87 | element.style['MozTransform'] = 'rotate(' + angle + 'deg)'; 88 | element.style['OTransform'] = 'rotate(' + angle + 'deg)'; 89 | element.style['WebkitTransform'] = 'rotate(' + angle + 'deg)'; 90 | element.style['msTransform'] = 'rotate(' + angle + 'deg)'; 91 | }); 92 | 93 | } 94 | 95 | if (window != undefined) { 96 | window.µTags = µTags; 97 | } 98 | 99 | 100 | -------------------------------------------------------------------------------- /themes/dev-random/templates/archives.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block content_title %}{{ SITENAME }} — Archives{% endblock %} 4 | 5 | {%- block content %} 6 |
7 |

Archives

8 |
9 | {% for article in articles %} 10 | {% if loop.first or article.date.strftime('%Y %m') != articles[loop.index0-1].date.strftime('%Y %m') %} 11 |
12 |

{{ article.date.strftime('%B %Y') }}

13 |
    14 | {% endif %} 15 | 16 |
  • 17 | 20 | {{ article.title }} 21 | 22 |
  • 23 | 24 | {% if loop.last or article.date.strftime('%Y %m') != articles[loop.index0+1].date.strftime('%Y %m') %} 25 |
26 |
27 | {% endif %} 28 | {% endfor %} 29 |
30 |
31 | {% endblock content -%} 32 | -------------------------------------------------------------------------------- /themes/dev-random/templates/article.html: -------------------------------------------------------------------------------- 1 | {%- if article.lang %}{% set DEFAULT_LANG = article.lang %}{% endif -%} 2 | {% extends "base.html" %} 3 | 4 | {% block headers %} 5 | {{ super() }} 6 | 7 | 8 | {% endblock %} 9 | 10 | {% block title %}{{ article.title }} — {{ super() }}{% endblock %} 11 | 12 | {%- block content %} 13 |
14 |
15 | 18 |

19 | 22 | {{ article.title }} 23 | 24 |

25 |
26 | Dans «{{ article.category }}» 27 | par {{ article.author}} 28 | {% if article.translations %} 29 |    Langues: 30 | {{ article.lang or DEFAULT_LANG }} 31 | {% for translation in article.translations %} 32 | {{ translation.lang }} 33 | {% endfor %} 34 | {% endif %} 35 |
36 |
37 |
38 | {{ article.content}} 39 |
40 | 47 | {% if DISQUS_SITENAME %} 48 |
49 |
50 | 61 | 62 | blog comments powered by Disqus 63 | {% endif %} 64 |
65 | 66 | 67 | {% endblock content -%} 68 | -------------------------------------------------------------------------------- /themes/dev-random/templates/author.html: -------------------------------------------------------------------------------- 1 | {% extends "index.html" %} 2 | 3 | {% block title %}{{ super() }} — Articles de {{ author }}{% endblock %} 4 | 5 | {% block index_title %}Articles de {{ author }} :{% endblock %} 6 | -------------------------------------------------------------------------------- /themes/dev-random/templates/base.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {% block headers %} 5 | 6 | {% block title %}{{ SITENAME }}{%endblock%} 7 | 8 | 9 | 10 | 13 | {% if FEED_RSS %} 14 | 17 | {% endif %} 18 | 19 | 20 | {% if GOOGLE_ANALYTICS %} 21 | 32 | {% endif %} 33 | {% endblock headers %} 34 | 35 | 36 |
37 |
38 |

39 | {{ SITENAME }} 40 |

41 |
42 | 43 |
44 | {% block content %} 45 | {% endblock content %} 46 |
47 | {% include "includes/sidebar.html" %} 48 | 49 | 53 |
54 | 55 | 56 | -------------------------------------------------------------------------------- /themes/dev-random/templates/categories.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block title %}{{ super() }} — Catégories{% endblock title %} 4 | 5 | {%- block content %} 6 |
7 |

Catégories

8 |
    9 | {% for category, n in categories %} 10 |
  • {{ category }} ({{ n|count }} articles)
  • 11 | {% endfor %} 12 |
13 |
14 | {% endblock content -%} 15 | -------------------------------------------------------------------------------- /themes/dev-random/templates/category.html: -------------------------------------------------------------------------------- 1 | {% extends "index.html" %} 2 | 3 | {% block title %}{{ super() }} — Articles dans la catégorie «{{ category }}»{% endblock %} 4 | 5 | {% block index_title %}Articles dans la catégorie «{{ category }}» :{% endblock %} 6 | -------------------------------------------------------------------------------- /themes/dev-random/templates/includes/sidebar.html: -------------------------------------------------------------------------------- 1 | 47 | -------------------------------------------------------------------------------- /themes/dev-random/templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {%- block content %} 4 |
5 |

{% block index_title %}Tous les articles{% endblock index_title %}

6 | 7 | {% for article in articles_page.object_list %} 8 | 39 | {% endfor %} 40 | 41 | {%- if articles_page %} 42 | 69 | {%- endif%} 70 |
71 | {% endblock content -%} 72 | -------------------------------------------------------------------------------- /themes/dev-random/templates/page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block title %}{{ super() }} — {{ page.url }}{% endblock title %} 4 | 5 | {%- block content %} 6 |
7 |

{{ page.title }}

8 | {{ page.content }} 9 |
10 | {% endblock content -%} 11 | -------------------------------------------------------------------------------- /themes/dev-random/templates/tag.html: -------------------------------------------------------------------------------- 1 | {% extends "index.html" %} 2 | 3 | {% block title %}{{ super() }} — Articles avec le mot clé « {{ tag }} »{% endblock %} 4 | 5 | {% block index_title %}Articles avec le mot clé « {{ tag }} » :{% endblock %} 6 | 7 | -------------------------------------------------------------------------------- /themes/dev-random/templates/tags.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block headers %} 4 | {{ super() }} 5 | 6 | 15 | {% endblock headers %} 16 | 17 | {% block title %}{{ super() }} — Mots-clés{% endblock title %} 18 | 19 | {%- block content %} 20 |
21 |

Mots-clés

22 |
    23 | {% for tag, articles in tags %} 24 |
  • {{ tag }}
  • 25 | {% endfor %} 26 |
27 |
28 | {% endblock content -%} 29 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/AUTHORS.md: -------------------------------------------------------------------------------- 1 | The primary author of this project is: 2 | 3 | - [Daan Debie](https://github.com/DandyDev) aka `DandyDev` 4 | 5 | And Pelican Bootstrap 3 would not have been possible without the outstanding contributions of the following fine people: 6 | 7 | - [Magnun Leno](https://github.com/magnunleno) aka `magnunleno` 8 | - [Hilmar Lapp](https://github.com/hlapp) aka `hlapp` 9 | - [mwcz](https://github.com/mwcz) 10 | - [Sebastian Kempken](https://github.com/skempken) aka `skempken` 11 | - [Sagar Behere](https://github.com/sagarbehere) aka `sagarbehere` 12 | - [Romulo Jales](https://github.com/romulojales) aka `romulojales` 13 | - [Mike Abrahamsen](https://github.com/mikeabrahamsen) aka `mikeabrahamsen` 14 | 15 | (For a full contribution overview [look here](https://github.com/DandyDev/pelican-bootstrap3/graphs/contributors). 16 | If you name is missing, please tell me!) -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Guidelines For Contributing 2 | 3 | - Create a new git branch specific to your change, as opposed to making your commits in the master branch. 4 | - Don't put multiple fixes/features in the same branch / pull request. 5 | - Give a proper description in your pull request of what you're trying to fix. 6 | - First line of your commit message should start with present-tense verb, be 50 characters or less, and include the 7 | relevant issue number(s) if applicable. Example: _Ensure proper PLUGIN_PATH behavior. Refs #428._ If the commit completely 8 | fixes an existing issue or request on the tracker, please use `Fixes #585` or `Fix #585` syntax (so the relevant issue is automatically closed 9 | upon PR merge). 10 | - Make sure that new features are configurable using a theme variable (eg. `DISPLAY_CHUCKNORRIS_ADVICE`). Should default to 11 | _False_, so users will not get any surprises when upgrading. 12 | - If you introduce new theme variables, new behaviour or changes from the default Pelican behaviour, make sure you make 13 | mention of it in the [README](README.md) 14 | - Make sure changes do not break backwards compatibility, especially with regards to settings. 15 | - Only changes that stand to benefit a majority of users or use cases are suitable for contributing back to the main repository. For tweaks that are likely specific to your site or likings, try using `CUSTOM_CSS`. 16 | - If doing so would require a CSS selector that isn't supported by the theme, create a patch that adds the necessary CSS selector, not the CSS tweak. 17 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/EXAMPLES.md: -------------------------------------------------------------------------------- 1 | # Examples in the wild 2 | 3 | This is a non-exhaustive list of websites that use **pelican-boostrap3** as their theme. It shows the versatility of 4 | the theme (which is one of the perks of using Bootstrap 3). If your website provides a unique take on 5 | **pelican-bootstrap3** and you want your website to be listed here, don't hesitate to ask or make a pull-request! 6 | I reserve the right to refuse websites if they're not unique enough for my tastes or if I find them offensive. 7 | If your website is listed here, but you don't want it to be, let me know and I'll remove it. 8 | 9 | 10 | [DandyDev.net](http://dandydev.net) by [DandyDev](https://github.com/DandyDev) (Main author of pelican-bootstrap3) - Basic pelican-bootstrap3 setup using the _Simplex_ Bootswatch theme. 11 | 12 | [Mind Bending](http://mindbending.org/en) by [magnunleno](https://github.com/magnunleno) - Heavily customized design based on pelican-bootstrap3 with lots of stuff added. Some of that stuff was neatly contributed back to pelican-boostrap3. 13 | 14 | [Beneath Data](http://beneathdata.com) by [tylerhartley](https://github.com/tylerhartley) - Customized pelican-boostrap3 to include a homepage banner, a footer containing the "About Me" and other social content, plus other small UI tweaks. 15 | 16 | [toumorokoshi](http://toumorokoshi.github.io/) by [toumorokoshi](https://github.com/toumorokoshi) - Clean version of pelican-bootstrap3 with a nice profile area added in. 17 | 18 | [Christine Doig](http://chdoig.github.io/) by [chdoig](https://github.com/chdoig) - Barely recognizable anymore as pelican-boostrap3, but it is in fact [based on this theme](http://chdoig.github.io/create-pelican-blog.html). The Twitter widget has been contributed back to pelican-bootstrap3 19 | 20 | [Rebecca Weiss](http://www.rebeccaweiss.info/) by [rjweiss](https://github.com/rjweiss) 21 | 22 | [Theory And Practice](http://theoryandpractice.org/) by [cranmer](https://github.com/cranmer) - Nice customization of the frontpage, using widgets. 23 | 24 | [The official ncf website](http://www.ncf.io/) by [Normation](https://github.com/Normation) 25 | 26 | [Lappland. Inside Out.](http://lappland.io/) by [hlapp](https://github.com/hlapp) 27 | 28 | [Kev009.com](http://kev009.com/wp/) by [kev009](https://github.com/kev009) 29 | 30 | [dave_tucker:blog](http://dtucker.co.uk/) by [dave-tucker](https://github.com/dave-tucker) 31 | 32 | [Dopey's Corner](http://dopey.io/) 33 | 34 | [Toni Mueller](http://www.tonimueller.org/) by [muellert](https://github.com/muellert) 35 | 36 | [Caffeinated Engineering](http://caffeinatedengineering.com/) by [mattyjones](https://github.com/mattyjones) 37 | 38 | [Duncan Murdock](http://www.duncanmurdock.name/) by [damurdock](https://github.com/damurdock) 39 | 40 | [Ryan Gregory James](http://csc.ucdavis.edu/~rgjames/) by [Autoplectic](https://github.com/Autoplectic) 41 | 42 | [JPoser/Blog](http://jposer.net/) by [JPoser](https://github.com/JPoser) 43 | 44 | [Base-Art](http://base-art.net/) by [philn](https://github.com/philn) 45 | 46 | [Jason Antman's Blog](http://blog.jasonantman.com/) by [jantman](https://github.com/jantman) 47 | 48 | [Bryce Boe](http://bryceboe.com/) by [bboe](https://github.com/bboe) 49 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Daan Debie 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/screenshot-article.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/screenshot-article.png -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/screenshot.png -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/pygments/autumn.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #aaaaaa; font-style: italic } /* Comment */ 4 | .highlight pre .err { color: #FF0000; background-color: #FFAAAA } /* Error */ 5 | .highlight pre .k { color: #0000aa } /* Keyword */ 6 | .highlight pre .cm { color: #aaaaaa; font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #4c8317 } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #aaaaaa; font-style: italic } /* Comment.Single */ 9 | .highlight pre .cs { color: #0000aa; font-style: italic } /* Comment.Special */ 10 | .highlight pre .gd { color: #aa0000 } /* Generic.Deleted */ 11 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 12 | .highlight pre .gr { color: #aa0000 } /* Generic.Error */ 13 | .highlight pre .gh { color: #000080; font-weight: bold } /* Generic.Heading */ 14 | .highlight pre .gi { color: #00aa00 } /* Generic.Inserted */ 15 | .highlight pre .go { color: #888888 } /* Generic.Output */ 16 | .highlight pre .gp { color: #555555 } /* Generic.Prompt */ 17 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 18 | .highlight pre .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ 19 | .highlight pre .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .highlight pre .kc { color: #0000aa } /* Keyword.Constant */ 21 | .highlight pre .kd { color: #0000aa } /* Keyword.Declaration */ 22 | .highlight pre .kn { color: #0000aa } /* Keyword.Namespace */ 23 | .highlight pre .kp { color: #0000aa } /* Keyword.Pseudo */ 24 | .highlight pre .kr { color: #0000aa } /* Keyword.Reserved */ 25 | .highlight pre .kt { color: #00aaaa } /* Keyword.Type */ 26 | .highlight pre .m { color: #009999 } /* Literal.Number */ 27 | .highlight pre .s { color: #aa5500 } /* Literal.String */ 28 | .highlight pre .na { color: #1e90ff } /* Name.Attribute */ 29 | .highlight pre .nb { color: #00aaaa } /* Name.Builtin */ 30 | .highlight pre .nc { color: #00aa00; text-decoration: underline } /* Name.Class */ 31 | .highlight pre .no { color: #aa0000 } /* Name.Constant */ 32 | .highlight pre .nd { color: #888888 } /* Name.Decorator */ 33 | .highlight pre .ni { color: #880000; font-weight: bold } /* Name.Entity */ 34 | .highlight pre .nf { color: #00aa00 } /* Name.Function */ 35 | .highlight pre .nn { color: #00aaaa; text-decoration: underline } /* Name.Namespace */ 36 | .highlight pre .nt { color: #1e90ff; font-weight: bold } /* Name.Tag */ 37 | .highlight pre .nv { color: #aa0000 } /* Name.Variable */ 38 | .highlight pre .ow { color: #0000aa } /* Operator.Word */ 39 | .highlight pre .w { color: #bbbbbb } /* Text.Whitespace */ 40 | .highlight pre .mb { color: #009999 } /* Literal.Number.Bin */ 41 | .highlight pre .mf { color: #009999 } /* Literal.Number.Float */ 42 | .highlight pre .mh { color: #009999 } /* Literal.Number.Hex */ 43 | .highlight pre .mi { color: #009999 } /* Literal.Number.Integer */ 44 | .highlight pre .mo { color: #009999 } /* Literal.Number.Oct */ 45 | .highlight pre .sb { color: #aa5500 } /* Literal.String.Backtick */ 46 | .highlight pre .sc { color: #aa5500 } /* Literal.String.Char */ 47 | .highlight pre .sd { color: #aa5500 } /* Literal.String.Doc */ 48 | .highlight pre .s2 { color: #aa5500 } /* Literal.String.Double */ 49 | .highlight pre .se { color: #aa5500 } /* Literal.String.Escape */ 50 | .highlight pre .sh { color: #aa5500 } /* Literal.String.Heredoc */ 51 | .highlight pre .si { color: #aa5500 } /* Literal.String.Interpol */ 52 | .highlight pre .sx { color: #aa5500 } /* Literal.String.Other */ 53 | .highlight pre .sr { color: #009999 } /* Literal.String.Regex */ 54 | .highlight pre .s1 { color: #aa5500 } /* Literal.String.Single */ 55 | .highlight pre .ss { color: #0000aa } /* Literal.String.Symbol */ 56 | .highlight pre .bp { color: #00aaaa } /* Name.Builtin.Pseudo */ 57 | .highlight pre .vc { color: #aa0000 } /* Name.Variable.Class */ 58 | .highlight pre .vg { color: #aa0000 } /* Name.Variable.Global */ 59 | .highlight pre .vi { color: #aa0000 } /* Name.Variable.Instance */ 60 | .highlight pre .il { color: #009999 } /* Literal.Number.Integer.Long */ 61 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/pygments/borland.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #008800; font-style: italic } /* Comment */ 4 | .highlight pre .err { color: #a61717; background-color: #e3d2d2 } /* Error */ 5 | .highlight pre .k { color: #000080; font-weight: bold } /* Keyword */ 6 | .highlight pre .cm { color: #008800; font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #008080 } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #008800; font-style: italic } /* Comment.Single */ 9 | .highlight pre .cs { color: #008800; font-weight: bold } /* Comment.Special */ 10 | .highlight pre .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ 11 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 12 | .highlight pre .gr { color: #aa0000 } /* Generic.Error */ 13 | .highlight pre .gh { color: #999999 } /* Generic.Heading */ 14 | .highlight pre .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ 15 | .highlight pre .go { color: #888888 } /* Generic.Output */ 16 | .highlight pre .gp { color: #555555 } /* Generic.Prompt */ 17 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 18 | .highlight pre .gu { color: #aaaaaa } /* Generic.Subheading */ 19 | .highlight pre .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .highlight pre .kc { color: #000080; font-weight: bold } /* Keyword.Constant */ 21 | .highlight pre .kd { color: #000080; font-weight: bold } /* Keyword.Declaration */ 22 | .highlight pre .kn { color: #000080; font-weight: bold } /* Keyword.Namespace */ 23 | .highlight pre .kp { color: #000080; font-weight: bold } /* Keyword.Pseudo */ 24 | .highlight pre .kr { color: #000080; font-weight: bold } /* Keyword.Reserved */ 25 | .highlight pre .kt { color: #000080; font-weight: bold } /* Keyword.Type */ 26 | .highlight pre .m { color: #0000FF } /* Literal.Number */ 27 | .highlight pre .s { color: #0000FF } /* Literal.String */ 28 | .highlight pre .na { color: #FF0000 } /* Name.Attribute */ 29 | .highlight pre .nt { color: #000080; font-weight: bold } /* Name.Tag */ 30 | .highlight pre .ow { font-weight: bold } /* Operator.Word */ 31 | .highlight pre .w { color: #bbbbbb } /* Text.Whitespace */ 32 | .highlight pre .mb { color: #0000FF } /* Literal.Number.Bin */ 33 | .highlight pre .mf { color: #0000FF } /* Literal.Number.Float */ 34 | .highlight pre .mh { color: #0000FF } /* Literal.Number.Hex */ 35 | .highlight pre .mi { color: #0000FF } /* Literal.Number.Integer */ 36 | .highlight pre .mo { color: #0000FF } /* Literal.Number.Oct */ 37 | .highlight pre .sb { color: #0000FF } /* Literal.String.Backtick */ 38 | .highlight pre .sc { color: #800080 } /* Literal.String.Char */ 39 | .highlight pre .sd { color: #0000FF } /* Literal.String.Doc */ 40 | .highlight pre .s2 { color: #0000FF } /* Literal.String.Double */ 41 | .highlight pre .se { color: #0000FF } /* Literal.String.Escape */ 42 | .highlight pre .sh { color: #0000FF } /* Literal.String.Heredoc */ 43 | .highlight pre .si { color: #0000FF } /* Literal.String.Interpol */ 44 | .highlight pre .sx { color: #0000FF } /* Literal.String.Other */ 45 | .highlight pre .sr { color: #0000FF } /* Literal.String.Regex */ 46 | .highlight pre .s1 { color: #0000FF } /* Literal.String.Single */ 47 | .highlight pre .ss { color: #0000FF } /* Literal.String.Symbol */ 48 | .highlight pre .il { color: #0000FF } /* Literal.Number.Integer.Long */ 49 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/pygments/bw.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { font-style: italic } /* Comment */ 4 | .highlight pre .err { border: 1px solid #FF0000 } /* Error */ 5 | .highlight pre .k { font-weight: bold } /* Keyword */ 6 | .highlight pre .cm { font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .c1 { font-style: italic } /* Comment.Single */ 8 | .highlight pre .cs { font-style: italic } /* Comment.Special */ 9 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 10 | .highlight pre .gh { font-weight: bold } /* Generic.Heading */ 11 | .highlight pre .gp { font-weight: bold } /* Generic.Prompt */ 12 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 13 | .highlight pre .gu { font-weight: bold } /* Generic.Subheading */ 14 | .highlight pre .kc { font-weight: bold } /* Keyword.Constant */ 15 | .highlight pre .kd { font-weight: bold } /* Keyword.Declaration */ 16 | .highlight pre .kn { font-weight: bold } /* Keyword.Namespace */ 17 | .highlight pre .kr { font-weight: bold } /* Keyword.Reserved */ 18 | .highlight pre .s { font-style: italic } /* Literal.String */ 19 | .highlight pre .nc { font-weight: bold } /* Name.Class */ 20 | .highlight pre .ni { font-weight: bold } /* Name.Entity */ 21 | .highlight pre .ne { font-weight: bold } /* Name.Exception */ 22 | .highlight pre .nn { font-weight: bold } /* Name.Namespace */ 23 | .highlight pre .nt { font-weight: bold } /* Name.Tag */ 24 | .highlight pre .ow { font-weight: bold } /* Operator.Word */ 25 | .highlight pre .sb { font-style: italic } /* Literal.String.Backtick */ 26 | .highlight pre .sc { font-style: italic } /* Literal.String.Char */ 27 | .highlight pre .sd { font-style: italic } /* Literal.String.Doc */ 28 | .highlight pre .s2 { font-style: italic } /* Literal.String.Double */ 29 | .highlight pre .se { font-weight: bold; font-style: italic } /* Literal.String.Escape */ 30 | .highlight pre .sh { font-style: italic } /* Literal.String.Heredoc */ 31 | .highlight pre .si { font-weight: bold; font-style: italic } /* Literal.String.Interpol */ 32 | .highlight pre .sx { font-style: italic } /* Literal.String.Other */ 33 | .highlight pre .sr { font-style: italic } /* Literal.String.Regex */ 34 | .highlight pre .s1 { font-style: italic } /* Literal.String.Single */ 35 | .highlight pre .ss { font-style: italic } /* Literal.String.Symbol */ 36 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/pygments/github.css: -------------------------------------------------------------------------------- 1 | .hll { background-color: #ffffcc } 2 | .c { color: #999988; font-style: italic } /* Comment */ 3 | .err { color: #a61717; background-color: #e3d2d2 } /* Error */ 4 | .k { color: #000000; font-weight: bold } /* Keyword */ 5 | .o { color: #000000; font-weight: bold } /* Operator */ 6 | .cm { color: #999988; font-style: italic } /* Comment.Multiline */ 7 | .cp { color: #999999; font-weight: bold; font-style: italic } /* Comment.Preproc */ 8 | .c1 { color: #999988; font-style: italic } /* Comment.Single */ 9 | .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */ 10 | .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ 11 | .ge { color: #000000; font-style: italic } /* Generic.Emph */ 12 | .gr { color: #aa0000 } /* Generic.Error */ 13 | .gh { color: #999999 } /* Generic.Heading */ 14 | .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ 15 | .go { color: #888888 } /* Generic.Output */ 16 | .gp { color: #555555 } /* Generic.Prompt */ 17 | .gs { font-weight: bold } /* Generic.Strong */ 18 | .gu { color: #aaaaaa } /* Generic.Subheading */ 19 | .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .kc { color: #000000; font-weight: bold } /* Keyword.Constant */ 21 | .kd { color: #000000; font-weight: bold } /* Keyword.Declaration */ 22 | .kn { color: #000000; font-weight: bold } /* Keyword.Namespace */ 23 | .kp { color: #000000; font-weight: bold } /* Keyword.Pseudo */ 24 | .kr { color: #000000; font-weight: bold } /* Keyword.Reserved */ 25 | .kt { color: #445588; font-weight: bold } /* Keyword.Type */ 26 | .m { color: #009999 } /* Literal.Number */ 27 | .s { color: #d01040 } /* Literal.String */ 28 | .na { color: #008080 } /* Name.Attribute */ 29 | .nb { color: #0086B3 } /* Name.Builtin */ 30 | .nc { color: #445588; font-weight: bold } /* Name.Class */ 31 | .no { color: #008080 } /* Name.Constant */ 32 | .nd { color: #3c5d5d; font-weight: bold } /* Name.Decorator */ 33 | .ni { color: #800080 } /* Name.Entity */ 34 | .ne { color: #990000; font-weight: bold } /* Name.Exception */ 35 | .nf { color: #990000; font-weight: bold } /* Name.Function */ 36 | .nl { color: #990000; font-weight: bold } /* Name.Label */ 37 | .nn { color: #555555 } /* Name.Namespace */ 38 | .nt { color: #000080 } /* Name.Tag */ 39 | .nv { color: #008080 } /* Name.Variable */ 40 | .ow { color: #000000; font-weight: bold } /* Operator.Word */ 41 | .w { color: #bbbbbb } /* Text.Whitespace */ 42 | .mf { color: #009999 } /* Literal.Number.Float */ 43 | .mh { color: #009999 } /* Literal.Number.Hex */ 44 | .mi { color: #009999 } /* Literal.Number.Integer */ 45 | .mo { color: #009999 } /* Literal.Number.Oct */ 46 | .sb { color: #d01040 } /* Literal.String.Backtick */ 47 | .sc { color: #d01040 } /* Literal.String.Char */ 48 | .sd { color: #d01040 } /* Literal.String.Doc */ 49 | .s2 { color: #d01040 } /* Literal.String.Double */ 50 | .se { color: #d01040 } /* Literal.String.Escape */ 51 | .sh { color: #d01040 } /* Literal.String.Heredoc */ 52 | .si { color: #d01040 } /* Literal.String.Interpol */ 53 | .sx { color: #d01040 } /* Literal.String.Other */ 54 | .sr { color: #009926 } /* Literal.String.Regex */ 55 | .s1 { color: #d01040 } /* Literal.String.Single */ 56 | .ss { color: #990073 } /* Literal.String.Symbol */ 57 | .bp { color: #999999 } /* Name.Builtin.Pseudo */ 58 | .vc { color: #008080 } /* Name.Variable.Class */ 59 | .vg { color: #008080 } /* Name.Variable.Global */ 60 | .vi { color: #008080 } /* Name.Variable.Instance */ 61 | .il { color: #009999 } /* Literal.Number.Integer.Long */ 62 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/pygments/igor.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #FF0000; font-style: italic } /* Comment */ 4 | .highlight pre .k { color: #0000FF } /* Keyword */ 5 | .highlight pre .cm { color: #FF0000; font-style: italic } /* Comment.Multiline */ 6 | .highlight pre .cp { color: #FF0000; font-style: italic } /* Comment.Preproc */ 7 | .highlight pre .c1 { color: #FF0000; font-style: italic } /* Comment.Single */ 8 | .highlight pre .cs { color: #FF0000; font-style: italic } /* Comment.Special */ 9 | .highlight pre .kc { color: #0000FF } /* Keyword.Constant */ 10 | .highlight pre .kd { color: #0000FF } /* Keyword.Declaration */ 11 | .highlight pre .kn { color: #0000FF } /* Keyword.Namespace */ 12 | .highlight pre .kp { color: #0000FF } /* Keyword.Pseudo */ 13 | .highlight pre .kr { color: #0000FF } /* Keyword.Reserved */ 14 | .highlight pre .kt { color: #0000FF } /* Keyword.Type */ 15 | .highlight pre .s { color: #009C00 } /* Literal.String */ 16 | .highlight pre .nc { color: #007575 } /* Name.Class */ 17 | .highlight pre .nd { color: #CC00A3 } /* Name.Decorator */ 18 | .highlight pre .nf { color: #C34E00 } /* Name.Function */ 19 | .highlight pre .sb { color: #009C00 } /* Literal.String.Backtick */ 20 | .highlight pre .sc { color: #009C00 } /* Literal.String.Char */ 21 | .highlight pre .sd { color: #009C00 } /* Literal.String.Doc */ 22 | .highlight pre .s2 { color: #009C00 } /* Literal.String.Double */ 23 | .highlight pre .se { color: #009C00 } /* Literal.String.Escape */ 24 | .highlight pre .sh { color: #009C00 } /* Literal.String.Heredoc */ 25 | .highlight pre .si { color: #009C00 } /* Literal.String.Interpol */ 26 | .highlight pre .sx { color: #009C00 } /* Literal.String.Other */ 27 | .highlight pre .sr { color: #009C00 } /* Literal.String.Regex */ 28 | .highlight pre .s1 { color: #009C00 } /* Literal.String.Single */ 29 | .highlight pre .ss { color: #009C00 } /* Literal.String.Symbol */ 30 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/pygments/rrt.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #0000ff } 2 | .highlight pre { background: #000000; } 3 | .highlight pre .c { color: #00ff00 } /* Comment */ 4 | .highlight pre .k { color: #ff0000 } /* Keyword */ 5 | .highlight pre .cm { color: #00ff00 } /* Comment.Multiline */ 6 | .highlight pre .cp { color: #e5e5e5 } /* Comment.Preproc */ 7 | .highlight pre .c1 { color: #00ff00 } /* Comment.Single */ 8 | .highlight pre .cs { color: #00ff00 } /* Comment.Special */ 9 | .highlight pre .kc { color: #ff0000 } /* Keyword.Constant */ 10 | .highlight pre .kd { color: #ff0000 } /* Keyword.Declaration */ 11 | .highlight pre .kn { color: #ff0000 } /* Keyword.Namespace */ 12 | .highlight pre .kp { color: #ff0000 } /* Keyword.Pseudo */ 13 | .highlight pre .kr { color: #ff0000 } /* Keyword.Reserved */ 14 | .highlight pre .kt { color: #ee82ee } /* Keyword.Type */ 15 | .highlight pre .s { color: #87ceeb } /* Literal.String */ 16 | .highlight pre .no { color: #7fffd4 } /* Name.Constant */ 17 | .highlight pre .nf { color: #ffff00 } /* Name.Function */ 18 | .highlight pre .nv { color: #eedd82 } /* Name.Variable */ 19 | .highlight pre .sb { color: #87ceeb } /* Literal.String.Backtick */ 20 | .highlight pre .sc { color: #87ceeb } /* Literal.String.Char */ 21 | .highlight pre .sd { color: #87ceeb } /* Literal.String.Doc */ 22 | .highlight pre .s2 { color: #87ceeb } /* Literal.String.Double */ 23 | .highlight pre .se { color: #87ceeb } /* Literal.String.Escape */ 24 | .highlight pre .sh { color: #87ceeb } /* Literal.String.Heredoc */ 25 | .highlight pre .si { color: #87ceeb } /* Literal.String.Interpol */ 26 | .highlight pre .sx { color: #87ceeb } /* Literal.String.Other */ 27 | .highlight pre .sr { color: #87ceeb } /* Literal.String.Regex */ 28 | .highlight pre .s1 { color: #87ceeb } /* Literal.String.Single */ 29 | .highlight pre .ss { color: #87ceeb } /* Literal.String.Symbol */ 30 | .highlight pre .vc { color: #eedd82 } /* Name.Variable.Class */ 31 | .highlight pre .vg { color: #eedd82 } /* Name.Variable.Global */ 32 | .highlight pre .vi { color: #eedd82 } /* Name.Variable.Instance */ 33 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/pygments/vs.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #008000 } /* Comment */ 4 | .highlight pre .err { border: 1px solid #FF0000 } /* Error */ 5 | .highlight pre .k { color: #0000ff } /* Keyword */ 6 | .highlight pre .cm { color: #008000 } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #0000ff } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #008000 } /* Comment.Single */ 9 | .highlight pre .cs { color: #008000 } /* Comment.Special */ 10 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 11 | .highlight pre .gh { font-weight: bold } /* Generic.Heading */ 12 | .highlight pre .gp { font-weight: bold } /* Generic.Prompt */ 13 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 14 | .highlight pre .gu { font-weight: bold } /* Generic.Subheading */ 15 | .highlight pre .kc { color: #0000ff } /* Keyword.Constant */ 16 | .highlight pre .kd { color: #0000ff } /* Keyword.Declaration */ 17 | .highlight pre .kn { color: #0000ff } /* Keyword.Namespace */ 18 | .highlight pre .kp { color: #0000ff } /* Keyword.Pseudo */ 19 | .highlight pre .kr { color: #0000ff } /* Keyword.Reserved */ 20 | .highlight pre .kt { color: #2b91af } /* Keyword.Type */ 21 | .highlight pre .s { color: #a31515 } /* Literal.String */ 22 | .highlight pre .nc { color: #2b91af } /* Name.Class */ 23 | .highlight pre .ow { color: #0000ff } /* Operator.Word */ 24 | .highlight pre .sb { color: #a31515 } /* Literal.String.Backtick */ 25 | .highlight pre .sc { color: #a31515 } /* Literal.String.Char */ 26 | .highlight pre .sd { color: #a31515 } /* Literal.String.Doc */ 27 | .highlight pre .s2 { color: #a31515 } /* Literal.String.Double */ 28 | .highlight pre .se { color: #a31515 } /* Literal.String.Escape */ 29 | .highlight pre .sh { color: #a31515 } /* Literal.String.Heredoc */ 30 | .highlight pre .si { color: #a31515 } /* Literal.String.Interpol */ 31 | .highlight pre .sx { color: #a31515 } /* Literal.String.Other */ 32 | .highlight pre .sr { color: #a31515 } /* Literal.String.Regex */ 33 | .highlight pre .s1 { color: #a31515 } /* Literal.String.Single */ 34 | .highlight pre .ss { color: #a31515 } /* Literal.String.Symbol */ 35 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/pygments/xcode.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #177500 } /* Comment */ 4 | .highlight pre .err { color: #000000 } /* Error */ 5 | .highlight pre .k { color: #A90D91 } /* Keyword */ 6 | .highlight pre .l { color: #1C01CE } /* Literal */ 7 | .highlight pre .n { color: #000000 } /* Name */ 8 | .highlight pre .o { color: #000000 } /* Operator */ 9 | .highlight pre .cm { color: #177500 } /* Comment.Multiline */ 10 | .highlight pre .cp { color: #633820 } /* Comment.Preproc */ 11 | .highlight pre .c1 { color: #177500 } /* Comment.Single */ 12 | .highlight pre .cs { color: #177500 } /* Comment.Special */ 13 | .highlight pre .kc { color: #A90D91 } /* Keyword.Constant */ 14 | .highlight pre .kd { color: #A90D91 } /* Keyword.Declaration */ 15 | .highlight pre .kn { color: #A90D91 } /* Keyword.Namespace */ 16 | .highlight pre .kp { color: #A90D91 } /* Keyword.Pseudo */ 17 | .highlight pre .kr { color: #A90D91 } /* Keyword.Reserved */ 18 | .highlight pre .kt { color: #A90D91 } /* Keyword.Type */ 19 | .highlight pre .ld { color: #1C01CE } /* Literal.Date */ 20 | .highlight pre .m { color: #1C01CE } /* Literal.Number */ 21 | .highlight pre .s { color: #C41A16 } /* Literal.String */ 22 | .highlight pre .na { color: #836C28 } /* Name.Attribute */ 23 | .highlight pre .nb { color: #A90D91 } /* Name.Builtin */ 24 | .highlight pre .nc { color: #3F6E75 } /* Name.Class */ 25 | .highlight pre .no { color: #000000 } /* Name.Constant */ 26 | .highlight pre .nd { color: #000000 } /* Name.Decorator */ 27 | .highlight pre .ni { color: #000000 } /* Name.Entity */ 28 | .highlight pre .ne { color: #000000 } /* Name.Exception */ 29 | .highlight pre .nf { color: #000000 } /* Name.Function */ 30 | .highlight pre .nl { color: #000000 } /* Name.Label */ 31 | .highlight pre .nn { color: #000000 } /* Name.Namespace */ 32 | .highlight pre .nx { color: #000000 } /* Name.Other */ 33 | .highlight pre .py { color: #000000 } /* Name.Property */ 34 | .highlight pre .nt { color: #000000 } /* Name.Tag */ 35 | .highlight pre .nv { color: #000000 } /* Name.Variable */ 36 | .highlight pre .ow { color: #000000 } /* Operator.Word */ 37 | .highlight pre .mb { color: #1C01CE } /* Literal.Number.Bin */ 38 | .highlight pre .mf { color: #1C01CE } /* Literal.Number.Float */ 39 | .highlight pre .mh { color: #1C01CE } /* Literal.Number.Hex */ 40 | .highlight pre .mi { color: #1C01CE } /* Literal.Number.Integer */ 41 | .highlight pre .mo { color: #1C01CE } /* Literal.Number.Oct */ 42 | .highlight pre .sb { color: #C41A16 } /* Literal.String.Backtick */ 43 | .highlight pre .sc { color: #2300CE } /* Literal.String.Char */ 44 | .highlight pre .sd { color: #C41A16 } /* Literal.String.Doc */ 45 | .highlight pre .s2 { color: #C41A16 } /* Literal.String.Double */ 46 | .highlight pre .se { color: #C41A16 } /* Literal.String.Escape */ 47 | .highlight pre .sh { color: #C41A16 } /* Literal.String.Heredoc */ 48 | .highlight pre .si { color: #C41A16 } /* Literal.String.Interpol */ 49 | .highlight pre .sx { color: #C41A16 } /* Literal.String.Other */ 50 | .highlight pre .sr { color: #C41A16 } /* Literal.String.Regex */ 51 | .highlight pre .s1 { color: #C41A16 } /* Literal.String.Single */ 52 | .highlight pre .ss { color: #C41A16 } /* Literal.String.Symbol */ 53 | .highlight pre .bp { color: #5B269A } /* Name.Builtin.Pseudo */ 54 | .highlight pre .vc { color: #000000 } /* Name.Variable.Class */ 55 | .highlight pre .vg { color: #000000 } /* Name.Variable.Global */ 56 | .highlight pre .vi { color: #000000 } /* Name.Variable.Instance */ 57 | .highlight pre .il { color: #1C01CE } /* Literal.Number.Integer.Long */ 58 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/shariff/shariff.min.css: -------------------------------------------------------------------------------- 1 | .shariff::after,.shariff::before{content:" ";display:table}.shariff::after{clear:both}.shariff ul{padding:0;margin:0}.shariff li{height:30px;display:inline-block;margin-right:14px;overflow:hidden;width:120px}.shariff li:last-child{margin-right:0}.shariff li a{color:#fff;position:relative;display:block;padding:0 5px 0 34px;line-height:30px;text-decoration:none}.shariff li .share_count,.shariff li .share_text{font-family:Arial,Helvetica,sans-serif;font-size:12px;vertical-align:middle}.shariff li .fa{line-height:inherit;position:absolute;left:5px}.shariff li .share_count{padding:0 8px;height:28px;position:absolute;top:1px;right:1px;line-height:30px}.shariff .theme-grey .shariff-button a{background-color:#b0b0b0}.shariff .theme-grey .shariff-button .share_count{background-color:#ccc;color:#333}.shariff .theme-white .shariff-button{border:1px solid #ddd}.shariff .theme-white .shariff-button a{background-color:#fff}.shariff .theme-white .shariff-button a:hover{background-color:#eee}.shariff .theme-white .shariff-button .share_count{background-color:#fff;color:#999}.shariff .orientation-vertical li{display:block;margin:5px 0}.shariff .orientation-vertical li .share_count{width:24px;text-align:right}.shariff .twitter a{background-color:#55acee}.shariff .twitter a:hover{background-color:#32bbf5}.shariff .twitter .fa-twitter{font-size:24px}.shariff .twitter .share_count{color:#0174a4;background-color:#96D4EE}.shariff .theme-white .twitter a{color:#55acee}.shariff .facebook a{padding-left:24px;background-color:#3b5998}.shariff .facebook a:hover{background-color:#4273c8}.shariff .facebook .fa-facebook{font-size:18px;top:1px}.shariff .facebook .share_count{color:#183a75;background-color:#99adcf}.shariff .theme-white .facebook a{color:#3b5998}.shariff .orientation-vertical .facebook a{padding-left:34px}.shariff .googleplus a{background-color:#d34836}.shariff .googleplus a:hover{background-color:#f75b44}.shariff .googleplus .fa-google-plus{font-size:17px;top:2px}.shariff .googleplus .share_count{color:#a31601;background-color:#eda79d}.shariff .theme-white .googleplus a{color:#d34836}.shariff .mail a{background-color:#999}.shariff .mail a:hover{background-color:#a8a8a8}.shariff .mail .fa-envelope{font-size:18px}.shariff .theme-white .mail a{color:#999}.shariff .info{width:23px;height:28px;border:1px solid #ccc}.shariff .info a{padding:0;color:#666;background-color:#fff}.shariff .info a:hover{background-color:#efefef}.shariff .info .fa-info{font-size:16px;left:9px}.shariff .info .share_text{display:block;text-indent:-9999px}.shariff .theme-grey .info a{background-color:#fff}.shariff .theme-grey .info a:hover{background-color:#efefef}.shariff .theme-white .info{height:30px}.shariff .orientation-vertical .info{margin-left:95px}.shariff .whatsapp a{background-color:#5cbe4a}.shariff .whatsapp a:hover{background-color:#34af23}.shariff .whatsapp .fa-whatsapp{font-size:22px}.shariff .theme-white .whatsapp a{color:#5cbe4a} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/css/typogrify.css: -------------------------------------------------------------------------------- 1 | .caps {font-size:.92em;} 2 | .amp {color:#666; font-size:1.05em;font-family:"Warnock Pro", "Goudy Old Style","Palatino","Book Antiqua",serif; font-style:italic;} 3 | .dquo {margin-left:-.38em;} 4 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/js/bodypadding.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function(){ 2 | $('body').css('padding-top', $('.navbar').height()+'px'); 3 | }); -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/js/github.js: -------------------------------------------------------------------------------- 1 | var github = (function(){ 2 | function escapeHtml(str) { 3 | return $('
').text(str).html(); 4 | } 5 | function render(target, repos){ 6 | var i = 0, fragment = '', t = $(target)[0]; 7 | fragment += '
    '; 8 | 9 | for(i = 0; i < repos.length; i++) { 10 | fragment += '
  • '+repos[i].name+'

    '+escapeHtml(repos[i].description||'')+'

  • '; 11 | } 12 | fragment += '
'; 13 | t.innerHTML = fragment; 14 | } 15 | return { 16 | showRepos: function(options){ 17 | $.ajax({ 18 | url: "https://api.github.com/users/"+options.user+"/repos?callback=?" 19 | , dataType: 'jsonp' 20 | , error: function (err) { $(options.target + ' li.loading').addClass('error').text("Error loading feed"); } 21 | , success: function(data) { 22 | var repos = []; 23 | if (!data || !data.data) { return; } 24 | for (var i = 0; i < data.data.length; i++) { 25 | if (options.skip_forks && data.data[i].fork) { continue; } 26 | repos.push(data.data[i]); 27 | } 28 | repos.sort(function(a, b) { 29 | var aDate = new Date(a.pushed_at).valueOf(), 30 | bDate = new Date(b.pushed_at).valueOf(); 31 | 32 | if (aDate === bDate) { return 0; } 33 | return aDate > bDate ? -1 : 1; 34 | }); 35 | 36 | if (options.count) { repos.splice(options.count); } 37 | render(options.target, repos); 38 | } 39 | }); 40 | } 41 | }; 42 | })(); 43 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/js/jXHR.js: -------------------------------------------------------------------------------- 1 | // jXHR.js (JSON-P XHR) 2 | // v0.1 (c) Kyle Simpson 3 | // MIT License 4 | 5 | (function(global){ 6 | var SETTIMEOUT = global.setTimeout, // for better compression 7 | doc = global.document, 8 | callback_counter = 0; 9 | 10 | global.jXHR = function() { 11 | var script_url, 12 | script_loaded, 13 | jsonp_callback, 14 | scriptElem, 15 | publicAPI = null; 16 | 17 | function removeScript() { try { scriptElem.parentNode.removeChild(scriptElem); } catch (err) { } } 18 | 19 | function reset() { 20 | script_loaded = false; 21 | script_url = ""; 22 | removeScript(); 23 | scriptElem = null; 24 | fireReadyStateChange(0); 25 | } 26 | 27 | function ThrowError(msg) { 28 | try { publicAPI.onerror.call(publicAPI,msg,script_url); } catch (err) { throw new Error(msg); } 29 | } 30 | 31 | function handleScriptLoad() { 32 | if ((this.readyState && this.readyState!=="complete" && this.readyState!=="loaded") || script_loaded) { return; } 33 | this.onload = this.onreadystatechange = null; // prevent memory leak 34 | script_loaded = true; 35 | if (publicAPI.readyState !== 4) ThrowError("Script failed to load ["+script_url+"]."); 36 | removeScript(); 37 | } 38 | 39 | function fireReadyStateChange(rs,args) { 40 | args = args || []; 41 | publicAPI.readyState = rs; 42 | if (typeof publicAPI.onreadystatechange === "function") publicAPI.onreadystatechange.apply(publicAPI,args); 43 | } 44 | 45 | publicAPI = { 46 | onerror:null, 47 | onreadystatechange:null, 48 | readyState:0, 49 | open:function(method,url){ 50 | reset(); 51 | internal_callback = "cb"+(callback_counter++); 52 | (function(icb){ 53 | global.jXHR[icb] = function() { 54 | try { fireReadyStateChange.call(publicAPI,4,arguments); } 55 | catch(err) { 56 | publicAPI.readyState = -1; 57 | ThrowError("Script failed to run ["+script_url+"]."); 58 | } 59 | global.jXHR[icb] = null; 60 | }; 61 | })(internal_callback); 62 | script_url = url.replace(/=\?/,"=jXHR."+internal_callback); 63 | fireReadyStateChange(1); 64 | }, 65 | send:function(){ 66 | SETTIMEOUT(function(){ 67 | scriptElem = doc.createElement("script"); 68 | scriptElem.setAttribute("type","text/javascript"); 69 | scriptElem.onload = scriptElem.onreadystatechange = function(){handleScriptLoad.call(scriptElem);}; 70 | scriptElem.setAttribute("src",script_url); 71 | doc.getElementsByTagName("head")[0].appendChild(scriptElem); 72 | },0); 73 | fireReadyStateChange(2); 74 | }, 75 | setRequestHeader:function(){}, // noop 76 | getResponseHeader:function(){return "";}, // basically noop 77 | getAllResponseHeaders:function(){return [];} // ditto 78 | }; 79 | 80 | reset(); 81 | 82 | return publicAPI; 83 | }; 84 | })(window); 85 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/js/respond.min.js: -------------------------------------------------------------------------------- 1 | /*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas. Dual MIT/BSD license */ 2 | /*! NOTE: If you're already including a window.matchMedia polyfill via Modernizr or otherwise, you don't need this part */ 3 | window.matchMedia=window.matchMedia||function(a){"use strict";var c,d=a.documentElement,e=d.firstElementChild||d.firstChild,f=a.createElement("body"),g=a.createElement("div");return g.id="mq-test-1",g.style.cssText="position:absolute;top:-100em",f.style.background="none",f.appendChild(g),function(a){return g.innerHTML='­',d.insertBefore(f,e),c=42===g.offsetWidth,d.removeChild(f),{matches:c,media:a}}}(document); 4 | 5 | /*! Respond.js v1.1.0: min/max-width media query polyfill. (c) Scott Jehl. MIT/GPLv2 Lic. j.mp/respondjs */ 6 | (function(a){"use strict";function x(){u(!0)}var b={};if(a.respond=b,b.update=function(){},b.mediaQueriesSupported=a.matchMedia&&a.matchMedia("only all").matches,!b.mediaQueriesSupported){var q,r,t,c=a.document,d=c.documentElement,e=[],f=[],g=[],h={},i=30,j=c.getElementsByTagName("head")[0]||d,k=c.getElementsByTagName("base")[0],l=j.getElementsByTagName("link"),m=[],n=function(){for(var b=0;l.length>b;b++){var c=l[b],d=c.href,e=c.media,f=c.rel&&"stylesheet"===c.rel.toLowerCase();d&&f&&!h[d]&&(c.styleSheet&&c.styleSheet.rawCssText?(p(c.styleSheet.rawCssText,d,e),h[d]=!0):(!/^([a-zA-Z:]*\/\/)/.test(d)&&!k||d.replace(RegExp.$1,"").split("/")[0]===a.location.host)&&m.push({href:d,media:e}))}o()},o=function(){if(m.length){var b=m.shift();v(b.href,function(c){p(c,b.href,b.media),h[b.href]=!0,a.setTimeout(function(){o()},0)})}},p=function(a,b,c){var d=a.match(/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi),g=d&&d.length||0;b=b.substring(0,b.lastIndexOf("/"));var h=function(a){return a.replace(/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,"$1"+b+"$2$3")},i=!g&&c;b.length&&(b+="/"),i&&(g=1);for(var j=0;g>j;j++){var k,l,m,n;i?(k=c,f.push(h(a))):(k=d[j].match(/@media *([^\{]+)\{([\S\s]+?)$/)&&RegExp.$1,f.push(RegExp.$2&&h(RegExp.$2))),m=k.split(","),n=m.length;for(var o=0;n>o;o++)l=m[o],e.push({media:l.split("(")[0].match(/(only\s+)?([a-zA-Z]+)\s?/)&&RegExp.$2||"all",rules:f.length-1,hasquery:l.indexOf("(")>-1,minw:l.match(/\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:l.match(/\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/)&&parseFloat(RegExp.$1)+(RegExp.$2||"")})}u()},s=function(){var a,b=c.createElement("div"),e=c.body,f=!1;return b.style.cssText="position:absolute;font-size:1em;width:1em",e||(e=f=c.createElement("body"),e.style.background="none"),e.appendChild(b),d.insertBefore(e,d.firstChild),a=b.offsetWidth,f?d.removeChild(e):e.removeChild(b),a=t=parseFloat(a)},u=function(b){var h="clientWidth",k=d[h],m="CSS1Compat"===c.compatMode&&k||c.body[h]||k,n={},o=l[l.length-1],p=(new Date).getTime();if(b&&q&&i>p-q)return a.clearTimeout(r),r=a.setTimeout(u,i),void 0;q=p;for(var v in e)if(e.hasOwnProperty(v)){var w=e[v],x=w.minw,y=w.maxw,z=null===x,A=null===y,B="em";x&&(x=parseFloat(x)*(x.indexOf(B)>-1?t||s():1)),y&&(y=parseFloat(y)*(y.indexOf(B)>-1?t||s():1)),w.hasquery&&(z&&A||!(z||m>=x)||!(A||y>=m))||(n[w.media]||(n[w.media]=[]),n[w.media].push(f[w.rules]))}for(var C in g)g.hasOwnProperty(C)&&g[C]&&g[C].parentNode===j&&j.removeChild(g[C]);for(var D in n)if(n.hasOwnProperty(D)){var E=c.createElement("style"),F=n[D].join("\n");E.type="text/css",E.media=D,j.insertBefore(E,o.nextSibling),E.styleSheet?E.styleSheet.cssText=F:E.appendChild(c.createTextNode(F)),g.push(E)}},v=function(a,b){var c=w();c&&(c.open("GET",a,!0),c.onreadystatechange=function(){4!==c.readyState||200!==c.status&&304!==c.status||b(c.responseText)},4!==c.readyState&&c.send(null))},w=function(){var b=!1;try{b=new a.XMLHttpRequest}catch(c){b=new a.ActiveXObject("Microsoft.XMLHTTP")}return function(){return b}}();n(),b.update=n,a.addEventListener?a.addEventListener("resize",x,!1):a.attachEvent&&a.attachEvent("onresize",x)}})(this); 7 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/tipuesearch/img/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/tipuesearch/img/loader.gif -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/tipuesearch/img/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-bootstrap3/static/tipuesearch/img/search.png -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/tipuesearch/tipuesearch.css: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | Tipue Search 4.0 4 | Copyright (c) 2014 Tipue 5 | Tipue Search is released under the MIT License 6 | http://www.tipue.com/search 7 | */ 8 | 9 | 10 | #tipue_search_input 11 | { 12 | font: 13px/1.6 'open sans', sans-serif; 13 | color: #333; 14 | padding: 12px 12px 12px 40px; 15 | width: 170px; 16 | border: 1px solid #e2e2e2; 17 | border-radius: 0; 18 | -moz-appearance: none; 19 | -webkit-appearance: none; 20 | box-shadow: none; 21 | outline: 0; 22 | margin: 0; 23 | background: #fff url('img/search.png') no-repeat 15px 15px; 24 | } 25 | 26 | #tipue_search_content 27 | { 28 | max-width: 650px; 29 | padding-top: 15px; 30 | margin: 0; 31 | } 32 | #tipue_search_loading 33 | { 34 | padding-top: 60px; 35 | background: #fff url('img/loader.gif') no-repeat left; 36 | } 37 | 38 | #tipue_search_warning_head 39 | { 40 | font: 300 15px/1.6 'Open Sans', sans-serif; 41 | color: #555; 42 | } 43 | #tipue_search_warning 44 | { 45 | font: 300 13px/1.6 'Open Sans', sans-serif; 46 | color: #333; 47 | margin: 7px 0; 48 | } 49 | #tipue_search_warning a 50 | { 51 | color: #36c; 52 | font-weight: 300; 53 | text-decoration: none; 54 | } 55 | #tipue_search_warning a:hover 56 | { 57 | color: #333; 58 | } 59 | #tipue_search_results_count 60 | { 61 | font: 300 13px/1.6 'Open Sans', sans-serif; 62 | color: #333; 63 | } 64 | .tipue_search_content_title 65 | { 66 | font: 300 25px/1.7 'Open Sans', sans-serif; 67 | text-rendering: optimizelegibility; 68 | margin-top: 23px; 69 | } 70 | .tipue_search_content_title a 71 | { 72 | color: #333; 73 | text-decoration: none; 74 | } 75 | .tipue_search_content_title a:hover 76 | { 77 | color: #555; 78 | } 79 | .tipue_search_content_url 80 | { 81 | font: 300 13px/1.7 'Open Sans', sans-serif; 82 | word-break: break-all; 83 | word-break: break-word; 84 | -webkit-hyphens: auto; 85 | -moz-hyphens: auto; 86 | hyphens: auto; 87 | } 88 | .tipue_search_content_url a 89 | { 90 | color: #06c; 91 | text-decoration: none; 92 | } 93 | .tipue_search_content_url a:hover 94 | { 95 | color: #333; 96 | } 97 | .tipue_search_content_text 98 | { 99 | font: 300 15px/1.6 'Open Sans', sans-serif; 100 | color: #555; 101 | word-break: break-all; 102 | word-break: break-word; 103 | -webkit-hyphens: auto; 104 | -moz-hyphens: auto; 105 | hyphens: auto; 106 | margin-top: 3px; 107 | } 108 | .h01 109 | { 110 | color: #333; 111 | font-weight: 400; 112 | } 113 | 114 | #tipue_search_foot 115 | { 116 | margin: 51px 0 21px 0; 117 | } 118 | #tipue_search_foot_boxes 119 | { 120 | padding: 0; 121 | margin: 0; 122 | font: 12px/1 'Open Sans', sans-serif; 123 | } 124 | #tipue_search_foot_boxes li 125 | { 126 | list-style: none; 127 | margin: 0; 128 | padding: 0; 129 | display: inline; 130 | } 131 | #tipue_search_foot_boxes li a 132 | { 133 | padding: 9px 15px 10px 15px; 134 | background-color: #f1f1f1; 135 | border: 1px solid #dcdcdc; 136 | border-radius: 1px; 137 | color: #333; 138 | margin-right: 7px; 139 | text-decoration: none; 140 | text-align: center; 141 | } 142 | #tipue_search_foot_boxes li.current 143 | { 144 | padding: 9px 15px 10px 15px; 145 | background: #fff; 146 | border: 1px solid #dcdcdc; 147 | border-radius: 1px; 148 | color: #333; 149 | margin-right: 7px; 150 | text-align: center; 151 | } 152 | #tipue_search_foot_boxes li a:hover 153 | { 154 | border: 1px solid #ccc; 155 | background-color: #f3f3f3; 156 | } 157 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/tipuesearch/tipuesearch_content.js: -------------------------------------------------------------------------------- 1 | var tipuesearch = {"pages": [ 2 | {"title": "Tipue Search, a site search engine jQuery plugin", "text": "Tipue Search is a site search engine jQuery plugin. Tipue Search is open source and released under the MIT License, which means it's free for both commercial and non-commercial use. Tipue Search is responsive and works on all reasonably modern browsers.", "tags": "JavaScript", "loc": "http://www.tipue.com/search"}, 3 | {"title": "Tipue Search Static mode demo", "text": "This is a demo of Tipue Search Static mode.", "tags": "", "loc": "http://www.tipue.com/search/demos/static"}, 4 | {"title": "Tipue Search Live mode demo", "text": "This is a demo of Tipue Search Live mode.", "tags": "", "loc": "http://www.tipue.com/search/demos/live"}, 5 | {"title": "Tipue Search docs", "text": "If you haven't already done so, download Tipue Search. Copy the tipuesearch folder to your site.", "tags": "documentation", "loc": "http://www.tipue.com/search/docs"}, 6 | {"title": "Tipue jQuery plugins Support", "text": "If you're stuck we offer a range of flexible support plans for our jQuery plugins.", "tags": "", "loc": "http://www.tipue.com/support"}, 7 | {"title": "Tipue drop, a search suggestion box jQuery plugin", "text": "Tipue drop is a search suggestion box jQuery plugin. Tipue drop is open source and released under the MIT License, which means it's free for both commercial and non-commercial use. Tipue drop is responsive and works on all reasonably modern browsers.", "tags": "JavaScript", "loc": "http://www.tipue.com/drop"}, 8 | {"title": "Tipr, a small and simple jQuery tooltip plugin", "text": "Tipr is a small and simple jQuery tooltip plugin. It's free and open source. Tipr displays attractive tooltips, and it's a shade under 3 KB, CSS included.", "tags": "JavaScript", "loc": "http://www.tipue.com/tipr"}, 9 | {"title": "The Tipue blog", "text": "An occasional blog covering CSS, jQuery and web development.", "tags": "", "loc": "http://www.tipue.com/blog"}, 10 | {"title": "Tipue jQuery plugins", "text": "The Tipue jQuery plugins are free, open source and responsive. We offer a range of flexible support plans for our jQuery plugins, including free.", "tags": "", "loc": "http://www.tipue.com/jquery"}, 11 | {"title": "About Tipue", "text": "Tipue is a small web development studio based in North London. We've been around for over a decade. We design innovative add-ins, plugins, code and features with Perl, MySQL and jQuery.", "tags": "", "loc": "http://www.tipue.com/about"} 12 | ]}; 13 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/static/tipuesearch/tipuesearch_set.js: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | Tipue Search 4.0 4 | Copyright (c) 2014 Tipue 5 | Tipue Search is released under the MIT License 6 | http://www.tipue.com/search 7 | */ 8 | 9 | 10 | var tipuesearch_stop_words = ["and", "be", "by", "do", "for", "he", "how", "if", "is", "it", "my", "not", "of", "or", "the", "to", "up", "what", "when"]; 11 | 12 | var tipuesearch_replace = {"words": [ 13 | {"word": "tipua", "replace_with": "tipue"}, 14 | {"word": "javscript", "replace_with": "javascript"} 15 | ]}; 16 | 17 | var tipuesearch_stem = {"words": [ 18 | {"word": "e-mail", "stem": "email"}, 19 | {"word": "javascript", "stem": "script"}, 20 | {"word": "javascript", "stem": "js"} 21 | ]}; 22 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/archives.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block title %}Archives - {{ SITENAME }}{% endblock %} 3 | {% block breadcrumbs %} 4 | {% if DISPLAY_BREADCRUMBS %} 5 | 9 | {% endif %} 10 | {% endblock %} 11 | 12 | {% block content %} 13 |
14 |

Archives for {{ SITENAME }}

15 |
16 | {% for article in dates %} 17 |

18 | 19 | {{ article.title }}{% if article.subtitle %} - {{ article.subtitle }}{% endif %} 20 |

21 | {% endfor %} 22 |
23 |
24 | {% endblock %} 25 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/article_list.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block content %} 3 | {% if articles %} 4 | {% for article in (articles_page.object_list if articles_page else articles) %} 5 |
6 |

{{ article.title }}

7 | {% if DISPLAY_ARTICLE_INFO_ON_INDEX %} 8 |
9 | {% include "includes/article_info.html" %} 10 |
11 | {% endif %} 12 |
{{ article.summary }} 13 | {% include 'includes/comment_count.html' %} 14 | more ... 15 |
16 |
17 |
18 | {% endfor %} 19 | {% endif %} 20 | 21 | {% include 'includes/pagination.html' %} 22 | {% endblock content %} 23 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/author.html: -------------------------------------------------------------------------------- 1 | {% extends "article_list.html" %} 2 | 3 | {% block title %}Articles by {{ author }} - {{ SITENAME }}{% endblock %} 4 | 5 | {% block breadcrumbs %} 6 | {% if DISPLAY_BREADCRUMBS %} 7 | 12 | {% endif %} 13 | {% endblock %} 14 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/authors.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block title %}Authors - {{ SITENAME }}{% endblock %} 4 | 5 | {% block breadcrumbs %} 6 | {% if DISPLAY_BREADCRUMBS %} 7 | 11 | {% endif %} 12 | {% endblock %} 13 | 14 | {% block content %} 15 |

Authors on {{ SITENAME }}

16 | {% for author, articles in authors|sort %} 17 |
  • {{ author }} ({{ articles|count }})
  • 18 | {% endfor %} 19 | {% endblock %} 20 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/categories.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block title %}Categories - {{ SITENAME }}{% endblock %} 3 | 4 | {% block breadcrumbs %} 5 | {% if DISPLAY_BREADCRUMBS %} 6 | 10 | {% endif %} 11 | {% endblock %} 12 | 13 | {% block content %} 14 |
    15 |

    All Categories for {{ SITENAME }}

    16 |
    17 | {% for category, articles in categories %} 18 |
    19 | 24 |
    25 |
    26 | {% for article in articles %} 27 |

    {{ article.title }}

    28 | {% endfor %} 29 |
    30 |
    31 |
    32 | {% endfor %} 33 |
    34 | 35 |
    36 | {% endblock %} 37 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/category.html: -------------------------------------------------------------------------------- 1 | {% extends "article_list.html" %} 2 | {% block title %}{{ category }} - {{ SITENAME }}{% endblock %} 3 | {% block meta %} 4 | 5 | 6 | {% endblock %} 7 | {% block breadcrumbs %} 8 | {% if DISPLAY_BREADCRUMBS %} 9 | 14 | {% endif %} 15 | {% endblock %} 16 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/aboutme.html: -------------------------------------------------------------------------------- 1 |
    2 | {% if AVATAR %} 3 |

    4 | 5 |

    6 | {% endif %} 7 |

    8 | About {{ AUTHOR }}
    9 | {{ ABOUT_ME }} 10 |

    11 |
    -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/addthis.html: -------------------------------------------------------------------------------- 1 | {% if ADDTHIS_PROFILE %} 2 |
    3 | 4 |
    5 | {% if ADDTHIS_FACEBOOK_LIKE|default(true) %} 6 | 7 | {% endif %} 8 | {% if ADDTHIS_TWEET|default(true) %} 9 | 10 | {% endif %} 11 | {% if ADDTHIS_GOOGLE_PLUSONE|default(true) %} 12 | 13 | {% endif %} 14 |
    15 | 16 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/article_info.html: -------------------------------------------------------------------------------- 1 |
    2 | Date 3 | 4 | 5 | 6 | {% if SHOW_DATE_MODIFIED %} 7 | {% if article.modified %} 8 | Modified 9 | 10 | 11 | 12 | {% endif %} 13 | {% endif %} 14 | {% if SHOW_ARTICLE_AUTHOR %} 15 | {% if article.author %} 16 | By 17 | {{ article.author }} 18 | {% endif %} 19 | {% endif %} 20 | 21 | {% if SHOW_ARTICLE_CATEGORY %} 22 | Category 23 | {{ article.category }} 24 | {% endif %} 25 | 26 | {% if PDF_PROCESSOR %} 27 | 28 | PDF 29 | 30 | {% endif %} 31 | 32 | {% include 'includes/taglist.html' %} 33 | {% import 'includes/translations.html' as translations with context %} 34 | {{ translations.translations_for(article) }} 35 |
    36 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/banner.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/comment_count.html: -------------------------------------------------------------------------------- 1 | {% if DISQUS_SITENAME and DISQUS_DISPLAY_COUNTS %}

    View comments.

    {% endif %} 2 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/comments.html: -------------------------------------------------------------------------------- 1 |
    2 |
    3 |

    Comments

    4 |
    5 | 25 | 26 | 27 |
    28 | 29 | {% if DISQUS_SITENAME %} 30 |
    31 |
    32 |

    Comments

    33 | 34 |
    35 | 64 | 66 | comments powered by Disqus 67 | 68 |
    69 | {% endif %} 70 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/disqus_script.html: -------------------------------------------------------------------------------- 1 | {% if DISQUS_SITENAME %} 2 | 3 | 16 | 17 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/footer.html: -------------------------------------------------------------------------------- 1 |
    2 |
    3 |
    4 |
    5 | {% if articles %} 6 | {% set copy_date = articles[0].date.strftime('%Y') %} 7 | {% else %} 8 | {% set copy_date = '' %} 9 | {% endif %} 10 |
    © {{ copy_date }} {{ AUTHOR }} 11 | · Powered by pelican-bootstrap3, 12 | Pelican, 13 | Bootstrap 14 | {%- if CC_LICENSE or CC_LICENSE_DERIVATIVES or CC_LICENSE_COMMERCIAL %} 15 | {% from 'includes/cc-license.html' import cc_license_mark %} 16 |

    {{ cc_license_mark(cc_name=CC_LICENSE,derivatives=CC_LICENSE_DERIVATIVES,commercial=CC_LICENSE_COMMERCIAL,attr_markup=CC_ATTR_MARKUP,attr_props={'title':SITENAME,'name':article.author if article else AUTHOR,'url':SITEURL}) }}

    17 | {% endif %} 18 |
    19 | 20 |
    21 |
    22 |
    -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/ga.html: -------------------------------------------------------------------------------- 1 | {% if GOOGLE_ANALYTICS %} 2 | 3 | 18 | 19 | {% endif %} 20 | {% if GOOGLE_ANALYTICS_UNIVERSAL %} 21 | 22 | 31 | 32 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/github-js.html: -------------------------------------------------------------------------------- 1 | {% if GITHUB_USER %} 2 | {% if GITHUB_REPO_COUNT is not defined %} 3 | {% set GITHUB_REPO_COUNT = 5 %} 4 | {% endif %} 5 | {% if GITHUB_SKIP_FORK is not defined %} 6 | {% set GITHUB_SKIP_FORK = "false" %} 7 | {% else %} 8 | {% if GITHUB_SKIP_FORK %} 9 | {% set GITHUB_SKIP_FORK = "true" %} 10 | {% else %} 11 | {% set GITHUB_SKIP_FORK = "false" %} 12 | {% endif %} 13 | {% endif %} 14 | 15 | 33 | 34 | 35 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/github.html: -------------------------------------------------------------------------------- 1 | {% if GITHUB_USER %} 2 | 3 |
  • GitHub Repos

    4 |
    5 |

    Status updating...

    6 |
    7 | {% if GITHUB_SHOW_USER_LINK is defined %} 8 | @{{ GITHUB_USER }} on GitHub 9 | {% endif %} 10 |
  • 11 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/links.html: -------------------------------------------------------------------------------- 1 | {% if LINKS %} 2 |
  • Links

    3 | 12 |
  • 13 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/pagination.html: -------------------------------------------------------------------------------- 1 | {% if articles_page and articles_paginator.num_pages > 1 %} 2 | {% if USE_PAGER %} 3 |
      4 | {% if articles_page.has_previous() %} 5 | 6 | {% else %} 7 | 8 | {% endif %} 9 | {% if articles_page.has_next() %} 10 | 12 | {% else %} 13 | 14 | {% endif %} 15 |
    16 | {% else %} 17 |
      18 | {% if articles_page.has_previous() %} 19 | {% set num = articles_page.previous_page_number() %} 20 | 22 | {% else %} 23 | 24 | {% endif %} 25 | {% for num in range( 1, 1 + articles_paginator.num_pages ) %} 26 |
    • {{ num }}
    • 28 | {% endfor %} 29 | {% if articles_page.has_next() %} 30 | 32 | {% else %} 33 | 34 | {% endif %} 35 |
    36 | {% endif %} 37 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/piwik.html: -------------------------------------------------------------------------------- 1 | {% if PIWIK_SITE_ID and PIWIK_URL %} 2 | {% if PIWIK_SSL_URL is not defined %} 3 | {% set PIWIK_SSL_URL = PIWIK_URL %} 4 | {% endif %} 5 | 6 | 19 | 20 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/related-posts.html: -------------------------------------------------------------------------------- 1 | {% if article.related_posts %} 2 | 10 | {% endif %} 11 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/shariff.html: -------------------------------------------------------------------------------- 1 | {% if SHARIFF|default(false) %} 2 |
    3 | 4 |
    24 | 25 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/sidebar.html: -------------------------------------------------------------------------------- 1 | {% if DISPLAY_TAGS_ON_SIDEBAR is not defined %} 2 | {% set DISPLAY_TAGS_ON_SIDEBAR = True %} 3 | {% endif %} 4 | 5 |
    6 |
      7 | {% if SOCIAL %} 8 |
    • Social

      9 |
        10 | {% for name, link in SOCIAL %} 11 | {% set name_sanitized = name|lower|replace('+','-plus')|replace(' ','-') %} 12 | {% if name_sanitized in ['flickr', 'spotify', 'stack-overflow', 'weibo'] %} 13 | {% set iconattributes = '"fa fa-' ~ name_sanitized ~ ' fa-lg"' %} 14 | {% else %} 15 | {% set iconattributes = '"fa fa-' ~ name_sanitized ~ '-square fa-lg"' %} 16 | {% endif %} 17 |
      • {{ name }}
      • 18 | {% endfor %} 19 |
      20 |
    • 21 | {% endif %} 22 | 23 | {% if DISPLAY_RECENT_POSTS_ON_SIDEBAR %} 24 | {% if RECENT_POST_COUNT is not defined %} 25 | {% set RECENT_POST_COUNT = 5 %} 26 | {% endif %} 27 |
    • Recent Posts

      28 | 37 |
    • 38 | {% endif %} 39 | 40 | {% if DISPLAY_CATEGORIES_ON_SIDEBAR %} 41 |
    • Categories

      42 | 51 |
    • 52 | {% endif %} 53 | {% if DISPLAY_TAGS_ON_SIDEBAR %} 54 | {% if DISPLAY_TAGS_INLINE %} 55 | {% set tags = tag_cloud | sort(attribute='0') %} 56 | {% else %} 57 | {% set tags = tag_cloud | sort(attribute='1') %} 58 | {% endif %} 59 |
    • Tags

      60 | 69 |
    • 70 | {% endif %} 71 | {% include 'includes/github.html' %} 72 | {% include 'includes/twitter_timeline.html' %} 73 | {% include 'includes/links.html' %} 74 |
    75 |
    76 | 77 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/taglist.html: -------------------------------------------------------------------------------- 1 | {% if article.tags %} 2 | Tags 3 | {% for tag in article.tags %} 4 | {{ tag }} 5 | {% if not loop.last %} 6 | / 7 | {% endif %} 8 | {% endfor %} 9 | {% endif %} 10 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/translations.html: -------------------------------------------------------------------------------- 1 | {% macro translations_for(article) %} 2 | {% if article.translations %} 3 | Lang 4 | {% for translation in article.translations %} 5 | {{ translation.lang }} 6 | {% endfor %} 7 | {% endif %} 8 | {% endmacro %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/twitter_cards.html: -------------------------------------------------------------------------------- 1 | {% if TWITTER_CARDS and USE_OPEN_GRAPH %} 2 | {# Do not include duplicates tag with og ones. #} 3 | {# Twitter is able to infer them from og. #} 4 | 5 | {% if TWITTER_USERNAME %} 6 | 7 | 8 | {% endif %} 9 | 10 | {% if article %} 11 | {% if article.og_image %} 12 | 14 | {% elif OPEN_GRAPH_IMAGE %} 15 | 17 | {% endif %} 18 | {% elif page %} 19 | {% if page.og_image %} 20 | 22 | {% elif OPEN_GRAPH_IMAGE %} 23 | 25 | {% endif %} 26 | {% endif %} 27 | {% endif %} 28 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/includes/twitter_timeline.html: -------------------------------------------------------------------------------- 1 | {% if TWITTER_WIDGET_ID %} 2 | 3 |
  • Latest Tweets

  • 4 | 7 | 8 | 9 | 10 | {% endif %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends "article_list.html" %} 2 | 3 | {% block canonical_rel %}{% endblock %} 4 | 5 | {% block banner %} 6 | {% include 'includes/banner.html' %} 7 | {% endblock %} -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block title %}{{ page.title }} - {{ SITENAME }}{% endblock %} 3 | {% block html_lang %}{{ page.lang }}{% endblock %} 4 | {% block meta %} 5 | {% if page.author %} 6 | 7 | {% else %} 8 | 9 | {% endif %} 10 | {% if page.summary %} 11 | 12 | {% endif %} 13 | {% endblock %} 14 | {% block opengraph %} 15 | {% if OPEN_GRAPH_FB_APP_ID %} 16 | 17 | {% endif %} 18 | 19 | 20 | 21 | 22 | 23 | {% if page.og_image %} 24 | 26 | {% elif OPEN_GRAPH_IMAGE %} 27 | 29 | {% endif %} 30 | {% endblock %} 31 | 32 | {% block canonical_rel %} 33 | 34 | {% endblock %} 35 | 36 | {% block breadcrumbs %} 37 | {% if DISPLAY_BREADCRUMBS %} 38 | 44 | {% endif %} 45 | {% endblock %} 46 | 47 | {% block content %} 48 |
    49 |

    {{ page.title }}

    50 | {% import 'includes/translations.html' as translations with context %} 51 | {{ translations.translations_for(page) }} 52 | {% if PDF_PROCESSOR %} 53 | 54 | get the pdf 55 | 56 | {% endif %} 57 |
    58 | {{ page.content }} 59 | {% if page.comments == 'enabled' %} 60 | {% include 'includes/comments.html' %} 61 | {% endif %} 62 |
    63 |
    64 | {% endblock %} 65 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/search.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | 3 | {% block title %} 4 | Search - {{ super() }} 5 | {% endblock %} 6 | 7 | {% block scripts %} 8 | {% if 'assets' in PLUGINS %} 9 | {% include '_includes/minify_tipuesearch.html' with context %} 10 | {% else %} 11 | 12 | 13 | 14 | {% endif %} 15 | 25 | {% endblock %} 26 | 27 | {% block content %} 28 |
    29 | {% endblock %} 30 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/tag.html: -------------------------------------------------------------------------------- 1 | {% extends "article_list.html" %} 2 | {% block title %}{{ tag }} - {{ SITENAME }}{% endblock %} 3 | {% block meta %} 4 | 5 | 6 | {% endblock %} 7 | {% block breadcrumbs %} 8 | {% if DISPLAY_BREADCRUMBS %} 9 | 14 | {% endif %} 15 | {% endblock %} 16 | -------------------------------------------------------------------------------- /themes/pelican-bootstrap3/templates/tags.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block title %}Tags - {{ SITENAME }}{% endblock %} 4 | 5 | {% block breadcrumbs %} 6 | {% if DISPLAY_BREADCRUMBS %} 7 | 11 | {% endif %} 12 | {% endblock %} 13 | 14 | {% block content %} 15 |
    16 |

    Tags for {{ SITENAME }}

    17 |
    18 | {%- for tag, articles in tags|sort %} 19 |
    20 |
    21 |

    22 | {{ tag }} {{ articles|count }} 23 |

    24 |
    25 |
    26 |
    27 | {% for article in articles %} 28 |

    {{ article.title }}

    29 | {% endfor %} 30 |
    31 |
    32 |
    33 | {% endfor %} 34 |
    35 | 36 |
    37 | {% endblock %} 38 | -------------------------------------------------------------------------------- /themes/pelican-twitchy-6a8b844cd9d458debaade0a08048c81c490c23ca.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/pelican-twitchy-6a8b844cd9d458debaade0a08048c81c490c23ca.zip -------------------------------------------------------------------------------- /themes/twitchy/.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | ._* 3 | *.lock 4 | *.DS_Store 5 | *.swp 6 | *.out 7 | *.py[cod] 8 | output 9 | .idea/* 10 | .env 11 | *.ipr 12 | *.iml 13 | *.iws -------------------------------------------------------------------------------- /themes/twitchy/generate_pygments.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | OUTPUTDIR="static/css/pygments" 4 | 5 | for style in manni igor xcode vim autumn vs rrt native perldoc borland tango emacs friendly monokai paraiso-dark colorful murphy bw pastie paraiso-light trac default fruity 6 | do 7 | echo ${style}... 8 | pygmentize -S $style -f html -a ".highlight pre"> $OUTPUTDIR/$style.css 9 | done -------------------------------------------------------------------------------- /themes/twitchy/preview_article.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/preview_article.PNG -------------------------------------------------------------------------------- /themes/twitchy/preview_big.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/preview_big.PNG -------------------------------------------------------------------------------- /themes/twitchy/preview_small.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/preview_small.PNG -------------------------------------------------------------------------------- /themes/twitchy/static/css/pygments/autumn.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #aaaaaa; font-style: italic } /* Comment */ 4 | .highlight pre .err { color: #FF0000; background-color: #FFAAAA } /* Error */ 5 | .highlight pre .k { color: #0000aa } /* Keyword */ 6 | .highlight pre .cm { color: #aaaaaa; font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #4c8317 } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #aaaaaa; font-style: italic } /* Comment.Single */ 9 | .highlight pre .cs { color: #0000aa; font-style: italic } /* Comment.Special */ 10 | .highlight pre .gd { color: #aa0000 } /* Generic.Deleted */ 11 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 12 | .highlight pre .gr { color: #aa0000 } /* Generic.Error */ 13 | .highlight pre .gh { color: #000080; font-weight: bold } /* Generic.Heading */ 14 | .highlight pre .gi { color: #00aa00 } /* Generic.Inserted */ 15 | .highlight pre .go { color: #888888 } /* Generic.Output */ 16 | .highlight pre .gp { color: #555555 } /* Generic.Prompt */ 17 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 18 | .highlight pre .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ 19 | .highlight pre .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .highlight pre .kc { color: #0000aa } /* Keyword.Constant */ 21 | .highlight pre .kd { color: #0000aa } /* Keyword.Declaration */ 22 | .highlight pre .kn { color: #0000aa } /* Keyword.Namespace */ 23 | .highlight pre .kp { color: #0000aa } /* Keyword.Pseudo */ 24 | .highlight pre .kr { color: #0000aa } /* Keyword.Reserved */ 25 | .highlight pre .kt { color: #00aaaa } /* Keyword.Type */ 26 | .highlight pre .m { color: #009999 } /* Literal.Number */ 27 | .highlight pre .s { color: #aa5500 } /* Literal.String */ 28 | .highlight pre .na { color: #1e90ff } /* Name.Attribute */ 29 | .highlight pre .nb { color: #00aaaa } /* Name.Builtin */ 30 | .highlight pre .nc { color: #00aa00; text-decoration: underline } /* Name.Class */ 31 | .highlight pre .no { color: #aa0000 } /* Name.Constant */ 32 | .highlight pre .nd { color: #888888 } /* Name.Decorator */ 33 | .highlight pre .ni { color: #880000; font-weight: bold } /* Name.Entity */ 34 | .highlight pre .nf { color: #00aa00 } /* Name.Function */ 35 | .highlight pre .nn { color: #00aaaa; text-decoration: underline } /* Name.Namespace */ 36 | .highlight pre .nt { color: #1e90ff; font-weight: bold } /* Name.Tag */ 37 | .highlight pre .nv { color: #aa0000 } /* Name.Variable */ 38 | .highlight pre .ow { color: #0000aa } /* Operator.Word */ 39 | .highlight pre .w { color: #bbbbbb } /* Text.Whitespace */ 40 | .highlight pre .mb { color: #009999 } /* Literal.Number.Bin */ 41 | .highlight pre .mf { color: #009999 } /* Literal.Number.Float */ 42 | .highlight pre .mh { color: #009999 } /* Literal.Number.Hex */ 43 | .highlight pre .mi { color: #009999 } /* Literal.Number.Integer */ 44 | .highlight pre .mo { color: #009999 } /* Literal.Number.Oct */ 45 | .highlight pre .sb { color: #aa5500 } /* Literal.String.Backtick */ 46 | .highlight pre .sc { color: #aa5500 } /* Literal.String.Char */ 47 | .highlight pre .sd { color: #aa5500 } /* Literal.String.Doc */ 48 | .highlight pre .s2 { color: #aa5500 } /* Literal.String.Double */ 49 | .highlight pre .se { color: #aa5500 } /* Literal.String.Escape */ 50 | .highlight pre .sh { color: #aa5500 } /* Literal.String.Heredoc */ 51 | .highlight pre .si { color: #aa5500 } /* Literal.String.Interpol */ 52 | .highlight pre .sx { color: #aa5500 } /* Literal.String.Other */ 53 | .highlight pre .sr { color: #009999 } /* Literal.String.Regex */ 54 | .highlight pre .s1 { color: #aa5500 } /* Literal.String.Single */ 55 | .highlight pre .ss { color: #0000aa } /* Literal.String.Symbol */ 56 | .highlight pre .bp { color: #00aaaa } /* Name.Builtin.Pseudo */ 57 | .highlight pre .vc { color: #aa0000 } /* Name.Variable.Class */ 58 | .highlight pre .vg { color: #aa0000 } /* Name.Variable.Global */ 59 | .highlight pre .vi { color: #aa0000 } /* Name.Variable.Instance */ 60 | .highlight pre .il { color: #009999 } /* Literal.Number.Integer.Long */ 61 | -------------------------------------------------------------------------------- /themes/twitchy/static/css/pygments/borland.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #008800; font-style: italic } /* Comment */ 4 | .highlight pre .err { color: #a61717; background-color: #e3d2d2 } /* Error */ 5 | .highlight pre .k { color: #000080; font-weight: bold } /* Keyword */ 6 | .highlight pre .cm { color: #008800; font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #008080 } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #008800; font-style: italic } /* Comment.Single */ 9 | .highlight pre .cs { color: #008800; font-weight: bold } /* Comment.Special */ 10 | .highlight pre .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ 11 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 12 | .highlight pre .gr { color: #aa0000 } /* Generic.Error */ 13 | .highlight pre .gh { color: #999999 } /* Generic.Heading */ 14 | .highlight pre .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ 15 | .highlight pre .go { color: #888888 } /* Generic.Output */ 16 | .highlight pre .gp { color: #555555 } /* Generic.Prompt */ 17 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 18 | .highlight pre .gu { color: #aaaaaa } /* Generic.Subheading */ 19 | .highlight pre .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .highlight pre .kc { color: #000080; font-weight: bold } /* Keyword.Constant */ 21 | .highlight pre .kd { color: #000080; font-weight: bold } /* Keyword.Declaration */ 22 | .highlight pre .kn { color: #000080; font-weight: bold } /* Keyword.Namespace */ 23 | .highlight pre .kp { color: #000080; font-weight: bold } /* Keyword.Pseudo */ 24 | .highlight pre .kr { color: #000080; font-weight: bold } /* Keyword.Reserved */ 25 | .highlight pre .kt { color: #000080; font-weight: bold } /* Keyword.Type */ 26 | .highlight pre .m { color: #0000FF } /* Literal.Number */ 27 | .highlight pre .s { color: #0000FF } /* Literal.String */ 28 | .highlight pre .na { color: #FF0000 } /* Name.Attribute */ 29 | .highlight pre .nt { color: #000080; font-weight: bold } /* Name.Tag */ 30 | .highlight pre .ow { font-weight: bold } /* Operator.Word */ 31 | .highlight pre .w { color: #bbbbbb } /* Text.Whitespace */ 32 | .highlight pre .mb { color: #0000FF } /* Literal.Number.Bin */ 33 | .highlight pre .mf { color: #0000FF } /* Literal.Number.Float */ 34 | .highlight pre .mh { color: #0000FF } /* Literal.Number.Hex */ 35 | .highlight pre .mi { color: #0000FF } /* Literal.Number.Integer */ 36 | .highlight pre .mo { color: #0000FF } /* Literal.Number.Oct */ 37 | .highlight pre .sb { color: #0000FF } /* Literal.String.Backtick */ 38 | .highlight pre .sc { color: #800080 } /* Literal.String.Char */ 39 | .highlight pre .sd { color: #0000FF } /* Literal.String.Doc */ 40 | .highlight pre .s2 { color: #0000FF } /* Literal.String.Double */ 41 | .highlight pre .se { color: #0000FF } /* Literal.String.Escape */ 42 | .highlight pre .sh { color: #0000FF } /* Literal.String.Heredoc */ 43 | .highlight pre .si { color: #0000FF } /* Literal.String.Interpol */ 44 | .highlight pre .sx { color: #0000FF } /* Literal.String.Other */ 45 | .highlight pre .sr { color: #0000FF } /* Literal.String.Regex */ 46 | .highlight pre .s1 { color: #0000FF } /* Literal.String.Single */ 47 | .highlight pre .ss { color: #0000FF } /* Literal.String.Symbol */ 48 | .highlight pre .il { color: #0000FF } /* Literal.Number.Integer.Long */ 49 | -------------------------------------------------------------------------------- /themes/twitchy/static/css/pygments/bw.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { font-style: italic } /* Comment */ 4 | .highlight pre .err { border: 1px solid #FF0000 } /* Error */ 5 | .highlight pre .k { font-weight: bold } /* Keyword */ 6 | .highlight pre .cm { font-style: italic } /* Comment.Multiline */ 7 | .highlight pre .c1 { font-style: italic } /* Comment.Single */ 8 | .highlight pre .cs { font-style: italic } /* Comment.Special */ 9 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 10 | .highlight pre .gh { font-weight: bold } /* Generic.Heading */ 11 | .highlight pre .gp { font-weight: bold } /* Generic.Prompt */ 12 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 13 | .highlight pre .gu { font-weight: bold } /* Generic.Subheading */ 14 | .highlight pre .kc { font-weight: bold } /* Keyword.Constant */ 15 | .highlight pre .kd { font-weight: bold } /* Keyword.Declaration */ 16 | .highlight pre .kn { font-weight: bold } /* Keyword.Namespace */ 17 | .highlight pre .kr { font-weight: bold } /* Keyword.Reserved */ 18 | .highlight pre .s { font-style: italic } /* Literal.String */ 19 | .highlight pre .nc { font-weight: bold } /* Name.Class */ 20 | .highlight pre .ni { font-weight: bold } /* Name.Entity */ 21 | .highlight pre .ne { font-weight: bold } /* Name.Exception */ 22 | .highlight pre .nn { font-weight: bold } /* Name.Namespace */ 23 | .highlight pre .nt { font-weight: bold } /* Name.Tag */ 24 | .highlight pre .ow { font-weight: bold } /* Operator.Word */ 25 | .highlight pre .sb { font-style: italic } /* Literal.String.Backtick */ 26 | .highlight pre .sc { font-style: italic } /* Literal.String.Char */ 27 | .highlight pre .sd { font-style: italic } /* Literal.String.Doc */ 28 | .highlight pre .s2 { font-style: italic } /* Literal.String.Double */ 29 | .highlight pre .se { font-weight: bold; font-style: italic } /* Literal.String.Escape */ 30 | .highlight pre .sh { font-style: italic } /* Literal.String.Heredoc */ 31 | .highlight pre .si { font-weight: bold; font-style: italic } /* Literal.String.Interpol */ 32 | .highlight pre .sx { font-style: italic } /* Literal.String.Other */ 33 | .highlight pre .sr { font-style: italic } /* Literal.String.Regex */ 34 | .highlight pre .s1 { font-style: italic } /* Literal.String.Single */ 35 | .highlight pre .ss { font-style: italic } /* Literal.String.Symbol */ 36 | -------------------------------------------------------------------------------- /themes/twitchy/static/css/pygments/github.css: -------------------------------------------------------------------------------- 1 | .hll { background-color: #ffffcc } 2 | .c { color: #999988; font-style: italic } /* Comment */ 3 | .err { color: #a61717; background-color: #e3d2d2 } /* Error */ 4 | .k { color: #000000; font-weight: bold } /* Keyword */ 5 | .o { color: #000000; font-weight: bold } /* Operator */ 6 | .cm { color: #999988; font-style: italic } /* Comment.Multiline */ 7 | .cp { color: #999999; font-weight: bold; font-style: italic } /* Comment.Preproc */ 8 | .c1 { color: #999988; font-style: italic } /* Comment.Single */ 9 | .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */ 10 | .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ 11 | .ge { color: #000000; font-style: italic } /* Generic.Emph */ 12 | .gr { color: #aa0000 } /* Generic.Error */ 13 | .gh { color: #999999 } /* Generic.Heading */ 14 | .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ 15 | .go { color: #888888 } /* Generic.Output */ 16 | .gp { color: #555555 } /* Generic.Prompt */ 17 | .gs { font-weight: bold } /* Generic.Strong */ 18 | .gu { color: #aaaaaa } /* Generic.Subheading */ 19 | .gt { color: #aa0000 } /* Generic.Traceback */ 20 | .kc { color: #000000; font-weight: bold } /* Keyword.Constant */ 21 | .kd { color: #000000; font-weight: bold } /* Keyword.Declaration */ 22 | .kn { color: #000000; font-weight: bold } /* Keyword.Namespace */ 23 | .kp { color: #000000; font-weight: bold } /* Keyword.Pseudo */ 24 | .kr { color: #000000; font-weight: bold } /* Keyword.Reserved */ 25 | .kt { color: #445588; font-weight: bold } /* Keyword.Type */ 26 | .m { color: #009999 } /* Literal.Number */ 27 | .s { color: #d01040 } /* Literal.String */ 28 | .na { color: #008080 } /* Name.Attribute */ 29 | .nb { color: #0086B3 } /* Name.Builtin */ 30 | .nc { color: #445588; font-weight: bold } /* Name.Class */ 31 | .no { color: #008080 } /* Name.Constant */ 32 | .nd { color: #3c5d5d; font-weight: bold } /* Name.Decorator */ 33 | .ni { color: #800080 } /* Name.Entity */ 34 | .ne { color: #990000; font-weight: bold } /* Name.Exception */ 35 | .nf { color: #990000; font-weight: bold } /* Name.Function */ 36 | .nl { color: #990000; font-weight: bold } /* Name.Label */ 37 | .nn { color: #555555 } /* Name.Namespace */ 38 | .nt { color: #000080 } /* Name.Tag */ 39 | .nv { color: #008080 } /* Name.Variable */ 40 | .ow { color: #000000; font-weight: bold } /* Operator.Word */ 41 | .w { color: #bbbbbb } /* Text.Whitespace */ 42 | .mf { color: #009999 } /* Literal.Number.Float */ 43 | .mh { color: #009999 } /* Literal.Number.Hex */ 44 | .mi { color: #009999 } /* Literal.Number.Integer */ 45 | .mo { color: #009999 } /* Literal.Number.Oct */ 46 | .sb { color: #d01040 } /* Literal.String.Backtick */ 47 | .sc { color: #d01040 } /* Literal.String.Char */ 48 | .sd { color: #d01040 } /* Literal.String.Doc */ 49 | .s2 { color: #d01040 } /* Literal.String.Double */ 50 | .se { color: #d01040 } /* Literal.String.Escape */ 51 | .sh { color: #d01040 } /* Literal.String.Heredoc */ 52 | .si { color: #d01040 } /* Literal.String.Interpol */ 53 | .sx { color: #d01040 } /* Literal.String.Other */ 54 | .sr { color: #009926 } /* Literal.String.Regex */ 55 | .s1 { color: #d01040 } /* Literal.String.Single */ 56 | .ss { color: #990073 } /* Literal.String.Symbol */ 57 | .bp { color: #999999 } /* Name.Builtin.Pseudo */ 58 | .vc { color: #008080 } /* Name.Variable.Class */ 59 | .vg { color: #008080 } /* Name.Variable.Global */ 60 | .vi { color: #008080 } /* Name.Variable.Instance */ 61 | .il { color: #009999 } /* Literal.Number.Integer.Long */ 62 | -------------------------------------------------------------------------------- /themes/twitchy/static/css/pygments/igor.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #FF0000; font-style: italic } /* Comment */ 4 | .highlight pre .k { color: #0000FF } /* Keyword */ 5 | .highlight pre .cm { color: #FF0000; font-style: italic } /* Comment.Multiline */ 6 | .highlight pre .cp { color: #FF0000; font-style: italic } /* Comment.Preproc */ 7 | .highlight pre .c1 { color: #FF0000; font-style: italic } /* Comment.Single */ 8 | .highlight pre .cs { color: #FF0000; font-style: italic } /* Comment.Special */ 9 | .highlight pre .kc { color: #0000FF } /* Keyword.Constant */ 10 | .highlight pre .kd { color: #0000FF } /* Keyword.Declaration */ 11 | .highlight pre .kn { color: #0000FF } /* Keyword.Namespace */ 12 | .highlight pre .kp { color: #0000FF } /* Keyword.Pseudo */ 13 | .highlight pre .kr { color: #0000FF } /* Keyword.Reserved */ 14 | .highlight pre .kt { color: #0000FF } /* Keyword.Type */ 15 | .highlight pre .s { color: #009C00 } /* Literal.String */ 16 | .highlight pre .nc { color: #007575 } /* Name.Class */ 17 | .highlight pre .nd { color: #CC00A3 } /* Name.Decorator */ 18 | .highlight pre .nf { color: #C34E00 } /* Name.Function */ 19 | .highlight pre .sb { color: #009C00 } /* Literal.String.Backtick */ 20 | .highlight pre .sc { color: #009C00 } /* Literal.String.Char */ 21 | .highlight pre .sd { color: #009C00 } /* Literal.String.Doc */ 22 | .highlight pre .s2 { color: #009C00 } /* Literal.String.Double */ 23 | .highlight pre .se { color: #009C00 } /* Literal.String.Escape */ 24 | .highlight pre .sh { color: #009C00 } /* Literal.String.Heredoc */ 25 | .highlight pre .si { color: #009C00 } /* Literal.String.Interpol */ 26 | .highlight pre .sx { color: #009C00 } /* Literal.String.Other */ 27 | .highlight pre .sr { color: #009C00 } /* Literal.String.Regex */ 28 | .highlight pre .s1 { color: #009C00 } /* Literal.String.Single */ 29 | .highlight pre .ss { color: #009C00 } /* Literal.String.Symbol */ 30 | -------------------------------------------------------------------------------- /themes/twitchy/static/css/pygments/rrt.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #0000ff } 2 | .highlight pre { background: #000000; } 3 | .highlight pre .c { color: #00ff00 } /* Comment */ 4 | .highlight pre .k { color: #ff0000 } /* Keyword */ 5 | .highlight pre .cm { color: #00ff00 } /* Comment.Multiline */ 6 | .highlight pre .cp { color: #e5e5e5 } /* Comment.Preproc */ 7 | .highlight pre .c1 { color: #00ff00 } /* Comment.Single */ 8 | .highlight pre .cs { color: #00ff00 } /* Comment.Special */ 9 | .highlight pre .kc { color: #ff0000 } /* Keyword.Constant */ 10 | .highlight pre .kd { color: #ff0000 } /* Keyword.Declaration */ 11 | .highlight pre .kn { color: #ff0000 } /* Keyword.Namespace */ 12 | .highlight pre .kp { color: #ff0000 } /* Keyword.Pseudo */ 13 | .highlight pre .kr { color: #ff0000 } /* Keyword.Reserved */ 14 | .highlight pre .kt { color: #ee82ee } /* Keyword.Type */ 15 | .highlight pre .s { color: #87ceeb } /* Literal.String */ 16 | .highlight pre .no { color: #7fffd4 } /* Name.Constant */ 17 | .highlight pre .nf { color: #ffff00 } /* Name.Function */ 18 | .highlight pre .nv { color: #eedd82 } /* Name.Variable */ 19 | .highlight pre .sb { color: #87ceeb } /* Literal.String.Backtick */ 20 | .highlight pre .sc { color: #87ceeb } /* Literal.String.Char */ 21 | .highlight pre .sd { color: #87ceeb } /* Literal.String.Doc */ 22 | .highlight pre .s2 { color: #87ceeb } /* Literal.String.Double */ 23 | .highlight pre .se { color: #87ceeb } /* Literal.String.Escape */ 24 | .highlight pre .sh { color: #87ceeb } /* Literal.String.Heredoc */ 25 | .highlight pre .si { color: #87ceeb } /* Literal.String.Interpol */ 26 | .highlight pre .sx { color: #87ceeb } /* Literal.String.Other */ 27 | .highlight pre .sr { color: #87ceeb } /* Literal.String.Regex */ 28 | .highlight pre .s1 { color: #87ceeb } /* Literal.String.Single */ 29 | .highlight pre .ss { color: #87ceeb } /* Literal.String.Symbol */ 30 | .highlight pre .vc { color: #eedd82 } /* Name.Variable.Class */ 31 | .highlight pre .vg { color: #eedd82 } /* Name.Variable.Global */ 32 | .highlight pre .vi { color: #eedd82 } /* Name.Variable.Instance */ 33 | -------------------------------------------------------------------------------- /themes/twitchy/static/css/pygments/vs.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #008000 } /* Comment */ 4 | .highlight pre .err { border: 1px solid #FF0000 } /* Error */ 5 | .highlight pre .k { color: #0000ff } /* Keyword */ 6 | .highlight pre .cm { color: #008000 } /* Comment.Multiline */ 7 | .highlight pre .cp { color: #0000ff } /* Comment.Preproc */ 8 | .highlight pre .c1 { color: #008000 } /* Comment.Single */ 9 | .highlight pre .cs { color: #008000 } /* Comment.Special */ 10 | .highlight pre .ge { font-style: italic } /* Generic.Emph */ 11 | .highlight pre .gh { font-weight: bold } /* Generic.Heading */ 12 | .highlight pre .gp { font-weight: bold } /* Generic.Prompt */ 13 | .highlight pre .gs { font-weight: bold } /* Generic.Strong */ 14 | .highlight pre .gu { font-weight: bold } /* Generic.Subheading */ 15 | .highlight pre .kc { color: #0000ff } /* Keyword.Constant */ 16 | .highlight pre .kd { color: #0000ff } /* Keyword.Declaration */ 17 | .highlight pre .kn { color: #0000ff } /* Keyword.Namespace */ 18 | .highlight pre .kp { color: #0000ff } /* Keyword.Pseudo */ 19 | .highlight pre .kr { color: #0000ff } /* Keyword.Reserved */ 20 | .highlight pre .kt { color: #2b91af } /* Keyword.Type */ 21 | .highlight pre .s { color: #a31515 } /* Literal.String */ 22 | .highlight pre .nc { color: #2b91af } /* Name.Class */ 23 | .highlight pre .ow { color: #0000ff } /* Operator.Word */ 24 | .highlight pre .sb { color: #a31515 } /* Literal.String.Backtick */ 25 | .highlight pre .sc { color: #a31515 } /* Literal.String.Char */ 26 | .highlight pre .sd { color: #a31515 } /* Literal.String.Doc */ 27 | .highlight pre .s2 { color: #a31515 } /* Literal.String.Double */ 28 | .highlight pre .se { color: #a31515 } /* Literal.String.Escape */ 29 | .highlight pre .sh { color: #a31515 } /* Literal.String.Heredoc */ 30 | .highlight pre .si { color: #a31515 } /* Literal.String.Interpol */ 31 | .highlight pre .sx { color: #a31515 } /* Literal.String.Other */ 32 | .highlight pre .sr { color: #a31515 } /* Literal.String.Regex */ 33 | .highlight pre .s1 { color: #a31515 } /* Literal.String.Single */ 34 | .highlight pre .ss { color: #a31515 } /* Literal.String.Symbol */ 35 | -------------------------------------------------------------------------------- /themes/twitchy/static/css/pygments/xcode.css: -------------------------------------------------------------------------------- 1 | .highlight pre .hll { background-color: #ffffcc } 2 | .highlight pre { background: #ffffff; } 3 | .highlight pre .c { color: #177500 } /* Comment */ 4 | .highlight pre .err { color: #000000 } /* Error */ 5 | .highlight pre .k { color: #A90D91 } /* Keyword */ 6 | .highlight pre .l { color: #1C01CE } /* Literal */ 7 | .highlight pre .n { color: #000000 } /* Name */ 8 | .highlight pre .o { color: #000000 } /* Operator */ 9 | .highlight pre .cm { color: #177500 } /* Comment.Multiline */ 10 | .highlight pre .cp { color: #633820 } /* Comment.Preproc */ 11 | .highlight pre .c1 { color: #177500 } /* Comment.Single */ 12 | .highlight pre .cs { color: #177500 } /* Comment.Special */ 13 | .highlight pre .kc { color: #A90D91 } /* Keyword.Constant */ 14 | .highlight pre .kd { color: #A90D91 } /* Keyword.Declaration */ 15 | .highlight pre .kn { color: #A90D91 } /* Keyword.Namespace */ 16 | .highlight pre .kp { color: #A90D91 } /* Keyword.Pseudo */ 17 | .highlight pre .kr { color: #A90D91 } /* Keyword.Reserved */ 18 | .highlight pre .kt { color: #A90D91 } /* Keyword.Type */ 19 | .highlight pre .ld { color: #1C01CE } /* Literal.Date */ 20 | .highlight pre .m { color: #1C01CE } /* Literal.Number */ 21 | .highlight pre .s { color: #C41A16 } /* Literal.String */ 22 | .highlight pre .na { color: #836C28 } /* Name.Attribute */ 23 | .highlight pre .nb { color: #A90D91 } /* Name.Builtin */ 24 | .highlight pre .nc { color: #3F6E75 } /* Name.Class */ 25 | .highlight pre .no { color: #000000 } /* Name.Constant */ 26 | .highlight pre .nd { color: #000000 } /* Name.Decorator */ 27 | .highlight pre .ni { color: #000000 } /* Name.Entity */ 28 | .highlight pre .ne { color: #000000 } /* Name.Exception */ 29 | .highlight pre .nf { color: #000000 } /* Name.Function */ 30 | .highlight pre .nl { color: #000000 } /* Name.Label */ 31 | .highlight pre .nn { color: #000000 } /* Name.Namespace */ 32 | .highlight pre .nx { color: #000000 } /* Name.Other */ 33 | .highlight pre .py { color: #000000 } /* Name.Property */ 34 | .highlight pre .nt { color: #000000 } /* Name.Tag */ 35 | .highlight pre .nv { color: #000000 } /* Name.Variable */ 36 | .highlight pre .ow { color: #000000 } /* Operator.Word */ 37 | .highlight pre .mb { color: #1C01CE } /* Literal.Number.Bin */ 38 | .highlight pre .mf { color: #1C01CE } /* Literal.Number.Float */ 39 | .highlight pre .mh { color: #1C01CE } /* Literal.Number.Hex */ 40 | .highlight pre .mi { color: #1C01CE } /* Literal.Number.Integer */ 41 | .highlight pre .mo { color: #1C01CE } /* Literal.Number.Oct */ 42 | .highlight pre .sb { color: #C41A16 } /* Literal.String.Backtick */ 43 | .highlight pre .sc { color: #2300CE } /* Literal.String.Char */ 44 | .highlight pre .sd { color: #C41A16 } /* Literal.String.Doc */ 45 | .highlight pre .s2 { color: #C41A16 } /* Literal.String.Double */ 46 | .highlight pre .se { color: #C41A16 } /* Literal.String.Escape */ 47 | .highlight pre .sh { color: #C41A16 } /* Literal.String.Heredoc */ 48 | .highlight pre .si { color: #C41A16 } /* Literal.String.Interpol */ 49 | .highlight pre .sx { color: #C41A16 } /* Literal.String.Other */ 50 | .highlight pre .sr { color: #C41A16 } /* Literal.String.Regex */ 51 | .highlight pre .s1 { color: #C41A16 } /* Literal.String.Single */ 52 | .highlight pre .ss { color: #C41A16 } /* Literal.String.Symbol */ 53 | .highlight pre .bp { color: #5B269A } /* Name.Builtin.Pseudo */ 54 | .highlight pre .vc { color: #000000 } /* Name.Variable.Class */ 55 | .highlight pre .vg { color: #000000 } /* Name.Variable.Global */ 56 | .highlight pre .vi { color: #000000 } /* Name.Variable.Instance */ 57 | .highlight pre .il { color: #1C01CE } /* Literal.Number.Integer.Long */ 58 | -------------------------------------------------------------------------------- /themes/twitchy/static/css/typogrify.css: -------------------------------------------------------------------------------- 1 | .caps {font-size:.92em;} 2 | .amp {color:#666; font-size:1.05em;font-family:"Warnock Pro", "Goudy Old Style","Palatino","Book Antiqua",serif; font-style:italic;} 3 | .dquo {margin-left:-.38em;} 4 | -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /themes/twitchy/static/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jadijadi/linuxlearner/d6f7f57400d7eda41937b1d601b4c8b9fbdf772c/themes/twitchy/static/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /themes/twitchy/static/js/pelican_twitchy.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function(){ 2 | /*toggle menu*/ 3 | $("#menu-toggle").click(function(e) { 4 | e.preventDefault(); 5 | $("#wrapper").toggleClass("toggled"); 6 | }); 7 | 8 | /*smooth scroll toc*/ 9 | $('a[href^="#"].toc-href').on('click',function (e) { 10 | e.preventDefault(); 11 | 12 | var offset = 0 13 | var target = this.hash; 14 | if (target.length){ 15 | offset = $(target).offset().top 16 | } 17 | 18 | $('html, body').stop().animate({ 19 | 'scrollTop': offset 20 | }, 500, 'swing', function () { 21 | window.location.hash = target; 22 | }); 23 | }); 24 | }); 25 | -------------------------------------------------------------------------------- /themes/twitchy/static/js/pelican_twitchy.min.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function(){$("#menu-toggle").click(function(e){e.preventDefault();$("#wrapper").toggleClass("toggled")});$('a[href^="#"].toc-href').on("click",function(e){e.preventDefault();var t=0;var n=this.hash;if(n.length){t=$(n).offset().top}$("html, body").stop().animate({scrollTop:t},500,"swing",function(){window.location.hash=n})})}) -------------------------------------------------------------------------------- /themes/twitchy/templates/archives.html: -------------------------------------------------------------------------------- 1 | {% extends "include/article_list.html" %} 2 | {% block title %}Recent Articles - {{ SITENAME }}{% endblock %} 3 | 4 | {% block precontent %} 5 |
    6 |
    7 | 10 |
    11 |
    12 | {% endblock %} 13 | -------------------------------------------------------------------------------- /themes/twitchy/templates/article.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block title %}{{ article.title|striptags }} - {{ SITENAME }}{% endblock %} 4 | {% block html_lang %}{{ article.lang }}{% endblock %} 5 | {% block meta %} 6 | {% if article.author %} 7 | 8 | {% else %} 9 | 10 | {% endif %} 11 | {% if article.tags %} 12 | 13 | {% endif %} 14 | {% if article.summary %} 15 | 16 | {% endif %} 17 | {% endblock %} 18 | 19 | {% block canonical_rel %} 20 | 21 | {% endblock %} 22 | 23 | {% block collapse_latest %}in{% endblock %} 24 | 25 | {% block content %} 26 |
    27 |
    28 |
    29 |
    30 |
    31 | {{ article.content }} 32 |
    33 |
    34 |

    35 |
    36 | {% include 'include/comments.html' %} 37 |
    38 | {% include 'include/toc.html' %} 39 |
    40 |
    41 |
    42 | {% endblock %} 43 | 44 | {% block scripts %} 45 | {% include 'include/comments_scripts.html' %} 46 | {% endblock %} 47 | -------------------------------------------------------------------------------- /themes/twitchy/templates/category.html: -------------------------------------------------------------------------------- 1 | {% extends "include/article_list.html" %} 2 | {% block title %}{{ category }} - {{ SITENAME }}{% endblock %} 3 | {% block meta %} 4 | 5 | 6 | {% endblock %} 7 | 8 | {% block collapse_categories %}in{% endblock %} 9 | 10 | {% block precontent %} 11 |
    12 |
    13 | 16 |
    17 |
    18 | {% endblock %} 19 | -------------------------------------------------------------------------------- /themes/twitchy/templates/include/article_info.html: -------------------------------------------------------------------------------- 1 | 21 | -------------------------------------------------------------------------------- /themes/twitchy/templates/include/article_list.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block content %} 4 |
    5 |
    6 | {% if articles %} 7 | {% for article in (articles) %} 8 | 14 | {% endfor %} 15 | {% endif %} 16 |
    17 |
    18 | {% endblock %} 19 | 20 | {% block scripts %} 21 | 40 | {% endblock %} 41 | -------------------------------------------------------------------------------- /themes/twitchy/templates/include/comments.html: -------------------------------------------------------------------------------- 1 | {% if DISQUS_SITENAME %} 2 | {% if DISQUS_LOAD_LATER %} 3 |
    4 | Show Comments 5 |
    6 | {% endif %} 7 |
    8 |
    9 |

    Comments

    10 |
    11 | 13 | comments powered by Disqus 14 |
    15 | {% endif %} 16 | -------------------------------------------------------------------------------- /themes/twitchy/templates/include/comments_scripts.html: -------------------------------------------------------------------------------- 1 | {% macro load_disqus() -%} 2 | /* * * DON'T EDIT BELOW THIS LINE * * */ 3 | (function () { 4 | var dsq = document.createElement('script'); 5 | dsq.type = 'text/javascript'; 6 | dsq.async = true; 7 | dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js'; 8 | (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); 9 | })(); 10 | {%- endmacro %} 11 | 12 | {% if DISQUS_SITENAME %} 13 | 14 | 53 | 54 | {% endif %} 55 | 56 | -------------------------------------------------------------------------------- /themes/twitchy/templates/include/disqus_script.html: -------------------------------------------------------------------------------- 1 | {% if DISQUS_SITENAME %} 2 | 3 | 16 | 17 | {% endif %} -------------------------------------------------------------------------------- /themes/twitchy/templates/include/footer.html: -------------------------------------------------------------------------------- 1 | {% set copy_date = (all_articles[0].date.strftime('%Y') if all_articles else articles[0].date.strftime('%Y')) %} 2 |
    3 |
    4 |
    5 |
    6 |

    7 | Built by Pelican / pelican-twitchy 8 | · 9 | {%- if CC_LICENSE or CC_LICENSE_DERIVATIVES or CC_LICENSE_COMMERCIAL %} 10 | {% from 'include/cc-license.html' import cc_license_mark %} 11 | {{ cc_license_mark(cc_name=CC_LICENSE,derivatives=CC_LICENSE_DERIVATIVES,commercial=CC_LICENSE_COMMERCIAL,attr_markup=CC_ATTR_MARKUP,attr_props={'title':SITENAME,'name':article.author if article else AUTHOR,'url':SITEURL}) }} 12 | {% else %} 13 | © {{ copy_date }} {{ AUTHOR }} 14 | {% endif %} 15 |

    16 |
    17 |
    18 |
    19 | -------------------------------------------------------------------------------- /themes/twitchy/templates/include/ga.html: -------------------------------------------------------------------------------- 1 | {% if GOOGLE_ANALYTICS %} 2 | 3 | 18 | 19 | {% endif %} 20 | {% if GOOGLE_ANALYTICS_UNIVERSAL %} 21 | 22 | 31 | 32 | {% endif %} -------------------------------------------------------------------------------- /themes/twitchy/templates/include/open_graph.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {% if article %} 4 | 5 | 6 | 7 | 8 | 9 | 10 | {% for tag in article.tags %} 11 | 12 | {% endfor %} 13 | {% if article.author %} 14 | 15 | {% elif AUTHOR %} 16 | 17 | {% endif %} 18 | {% if article.og_image %} 19 | 21 | {% elif OPEN_GRAPH_IMAGE %} 22 | 24 | {% endif %} 25 | {% elif page %} 26 | 27 | 28 | 29 | 30 | {% if page.author %} 31 | 32 | {% elif AUTHOR %} 33 | 34 | {% endif %} 35 | {% if page.og_image %} 36 | 38 | {% elif OPEN_GRAPH_IMAGE %} 39 | 41 | {% endif %} 42 | {% else %} 43 | 44 | 45 | 46 | 47 | {% if OPEN_GRAPH_IMAGE %} 48 | 50 | {% endif %} 51 | {% endif %} 52 | -------------------------------------------------------------------------------- /themes/twitchy/templates/include/toc.html: -------------------------------------------------------------------------------- 1 | {% if article.toc %} 2 |
    3 | 6 |
    7 | {% endif %} 8 | -------------------------------------------------------------------------------- /themes/twitchy/templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block title %}{{ SITENAME }}{% endblock %} 3 | 4 | {% block canonical_rel %} 5 | 6 | {% endblock %} 7 | 8 | {% block collapse_latest %}in{% endblock %} 9 | 10 | {% block precontent %} 11 |
    12 |
    13 |
    14 |
    15 |
    16 |
    17 |

    {{ SITENAME }}

    18 |

    {{ SITESUBTITLE }}

    19 |
    20 |
    21 |
    22 |
    23 |
    24 |
    25 |
    26 |

    Recent Articles:

    27 |
    28 |
    29 |
    30 | {% endblock %} 31 | 32 | {% block content %} 33 |
    34 |
    35 | {% if articles %} 36 | {% for article in (all_articles if all_articles else articles)[:RECENT_POST_COUNT] %} 37 |
    38 |

    39 | {{ article.title }} 40 | {% include "include/article_info.html" %} 41 |

    42 |
    43 | {{ article.summary }} 44 |
    45 |
    46 | {% if not loop.last %} 47 |
    48 | {% endif %} 49 | {% endfor %} 50 | 55 | {% endif %} 56 |
    57 |
    58 | {% endblock %} 59 | 60 | {% block scripts %} 61 | 78 | {% endblock %} 79 | 80 | 81 | -------------------------------------------------------------------------------- /themes/twitchy/templates/page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% block title %}{{ page.title }} - {{ SITENAME }}{% endblock %} 3 | {% block html_lang %}{{ page.lang }}{% endblock %} 4 | {% block meta %} 5 | {% if page.author %} 6 | 7 | {% else %} 8 | 9 | {% endif %} 10 | {% if page.summary %} 11 | 12 | {% endif %} 13 | {% endblock %} 14 | {% block opengraph %} 15 | {% if OPEN_GRAPH_FB_APP_ID %} 16 | 17 | {% endif %} 18 | 19 | 20 | 21 | 22 | 23 | {% if page.og_image %} 24 | 26 | {% elif OPEN_GRAPH_IMAGE %} 27 | 29 | {% endif %} 30 | {% endblock %} 31 | 32 | {% block canonical_rel %} 33 | 34 | {% endblock %} 35 | 36 | {% block collapse_latest %} 37 | {% if EXPAND_LATEST_ON_INDEX and page.url == '/index.html' %} 38 | in 39 | {% endif %} 40 | {% endblock %} 41 | 42 | {% block collapse_pages %} 43 | {% if not EXPAND_LATEST_ON_INDEX or page.url != '/index.html' %} 44 | in 45 | {% endif %} 46 | {% endblock %} 47 | 48 | {% block content %} 49 |
    50 |
    51 |
    52 | {{ page.content }} 53 |
    54 | 55 |
    56 |
    57 | {% endblock %} 58 | -------------------------------------------------------------------------------- /themes/twitchy/templates/tag.html: -------------------------------------------------------------------------------- 1 | {% extends "include/article_list.html" %} 2 | {% block title %}{{ tag }} - {{ SITENAME }}{% endblock %} 3 | {% block meta %} 4 | 5 | {% endblock %} 6 | 7 | {% block collapse_tags %}in{% endblock %} 8 | 9 | {% block precontent %} 10 |
    11 |
    12 | 15 |
    16 |
    17 | {% endblock %} 18 | --------------------------------------------------------------------------------