<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3074084601384130606</id><updated>2026-10-12T01:44:28.791-07:00</updated><category term="system"/><category term="osx"/><category term="programming"/><category term="shell"/><category term="soft"/><category term="latex"/><category term="linux"/><category term="interoperability"/><category term="image"/><category term="web"/><category term="network"/><category term="matlab"/><category term="general"/><category term="keyboard"/><category term="python"/><category term="code"/><category term="unix"/><category term="finder"/><category term="idle"/><category term="internet"/><category term="productivity"/><category term="color"/><category term="html"/><category term="javascript"/><category term="study"/><category term="windows"/><category term="X11"/><category term="cuda"/><category term="power management"/><category term="ssh"/><category term="video"/><category term="virtualization"/><category term="NN"/><category term="UI"/><category term="algebra"/><category term="dataURL"/><category term="docker"/><category term="el capitan"/><category term="gpu"/><category term="vim"/><category term="audio"/><category term="backup"/><category term="git"/><category term="gnuplot"/><category term="highlight"/><category term="preview"/><category term="ray marching"/><category term="svg"/><category term="usb"/><title type='text'>Migrating from Linux to OSX</title><subtitle type='html'>Thinks you might find while working on OSX but also general Unix stuff.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>128</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-4645925175110321735</id><published>2026-02-23T13:19:00.000-08:00</published><updated>2026-02-23T13:19:27.933-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="internet"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="shell"/><category scheme="http://www.blogger.com/atom/ns#" term="video"/><title type='text'>download mp4 from youtube </title><content type='html'>&lt;p&gt;Just use uv to run &lt;a href=&quot;https://github.com/yt-dlp/yt-dlp&quot;&gt;yt-dlp&lt;/a&gt;&amp;nbsp;(the new version of youtube-dl):&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp;&amp;gt;&amp;gt; uv run --with yt-dlp -k&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;--with node&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp;\&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;yt-dlp --js-runtimes node --remote-components ejs:github&amp;nbsp; \&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;https://www.youtube.com/watch\?v\=y3vV-yvMfF0&lt;/span&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/4645925175110321735/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2026/02/download-mp4-from-youtube.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/4645925175110321735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/4645925175110321735'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2026/02/download-mp4-from-youtube.html' title='download mp4 from youtube '/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-8540538343743895346</id><published>2026-01-01T09:55:00.000-08:00</published><updated>2026-01-01T09:55:25.067-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="study"/><category scheme="http://www.blogger.com/atom/ns#" term="web"/><title type='text'>Acceptance rates for the top-tier AI-related conferences</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhkU5PTbjUXOR0vycgesvPt_OsD_6FRYXYbRDX2xkaCWEJn4bBz8VQUyxZezhSQEXIfks9iDDiJU5nriaQUUd-veHU48z8s2wOjr5i_QByHbCIO_J2Z3nakmK_ZAQfj_iEyX8F3zbLRzXmnOFl_Ti6XvtIE2WoA7YXRVvRp07g_bbEoX_qfCZdntXlZbHA&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;760&quot; data-original-width=&quot;1668&quot; height=&quot;183&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhkU5PTbjUXOR0vycgesvPt_OsD_6FRYXYbRDX2xkaCWEJn4bBz8VQUyxZezhSQEXIfks9iDDiJU5nriaQUUd-veHU48z8s2wOjr5i_QByHbCIO_J2Z3nakmK_ZAQfj_iEyX8F3zbLRzXmnOFl_Ti6XvtIE2WoA7YXRVvRp07g_bbEoX_qfCZdntXlZbHA=w400-h183&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;See the tables in the original site:&amp;nbsp;&lt;a href=&quot;https://github.com/lixin4ever/Conference-Acceptance-Rate?tab=readme-ov-file#natural-language-processing-and-computational-linguistics&quot;&gt;https://github.com/lixin4ever/Conference-Acceptance-Rate?tab=readme-ov-file#natural-language-processing-and-computational-linguistics&lt;/a&gt;&amp;nbsp;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/8540538343743895346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2026/01/acceptance-rates-for-top-tier-ai.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/8540538343743895346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/8540538343743895346'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2026/01/acceptance-rates-for-top-tier-ai.html' title='Acceptance rates for the top-tier AI-related conferences'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEhkU5PTbjUXOR0vycgesvPt_OsD_6FRYXYbRDX2xkaCWEJn4bBz8VQUyxZezhSQEXIfks9iDDiJU5nriaQUUd-veHU48z8s2wOjr5i_QByHbCIO_J2Z3nakmK_ZAQfj_iEyX8F3zbLRzXmnOFl_Ti6XvtIE2WoA7YXRVvRp07g_bbEoX_qfCZdntXlZbHA=s72-w400-h183-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-4817118810754095925</id><published>2025-01-19T03:47:00.000-08:00</published><updated>2025-01-24T03:35:46.947-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><title type='text'>Charge Limiters for Increasing the Battery Life of Plugged-In Laptops on macOS</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhRQvvejhexWsI-33aPgUtzZL0G-qpqu0dWUntaaEce7MHL2RhYyIgB6ZoK9EJGsTdkpa5-2UFB2HAohnwFo-s4xqtPD5DGADkanwRqgGA1Kf0R-5pMUNp__rGB4yxme7Rd2MncGs5PmJUV0LwdERumFE3lgFSo4YIYZLdznU20ddF4Qa978sZ_S27BEBw&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;327&quot; data-original-width=&quot;272&quot; height=&quot;144&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhRQvvejhexWsI-33aPgUtzZL0G-qpqu0dWUntaaEce7MHL2RhYyIgB6ZoK9EJGsTdkpa5-2UFB2HAohnwFo-s4xqtPD5DGADkanwRqgGA1Kf0R-5pMUNp__rGB4yxme7Rd2MncGs5PmJUV0LwdERumFE3lgFSo4YIYZLdznU20ddF4Qa978sZ_S27BEBw=w120-h144&quot; width=&quot;120&quot; /&gt;&lt;/a&gt;&lt;/div&gt;When using a MacBook primarily plugged into a charger, it&#39;s often beneficial to limit the battery charge to around 80%. Charging up to 100% regularly can lead to increased wear on the battery, reducing its long-term lifespan. &lt;b&gt;By keeping the battery charge capped at 80%, you can reduce the stress on the battery&lt;/b&gt;, which helps to maintain its health over time, especially for devices that are always connected to power.&lt;p&gt;&lt;/p&gt;&lt;p&gt;A popular open-source charge limiter for macOS that can help manage this is:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://github.com/AppHouseKitchen/AlDente-Charge-Limiter&quot;&gt;AlDente Charge Limiter.&lt;/a&gt;&amp;nbsp;This tool offers an easy way to set a charge limit, allowing you to configure your MacBook to charge only up to your desired level (e.g., 80%).&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/4817118810754095925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2025/01/charge-limiters-for-increasing-battery.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/4817118810754095925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/4817118810754095925'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2025/01/charge-limiters-for-increasing-battery.html' title='Charge Limiters for Increasing the Battery Life of Plugged-In Laptops on macOS'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEhRQvvejhexWsI-33aPgUtzZL0G-qpqu0dWUntaaEce7MHL2RhYyIgB6ZoK9EJGsTdkpa5-2UFB2HAohnwFo-s4xqtPD5DGADkanwRqgGA1Kf0R-5pMUNp__rGB4yxme7Rd2MncGs5PmJUV0LwdERumFE3lgFSo4YIYZLdznU20ddF4Qa978sZ_S27BEBw=s72-w120-h144-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-1667001455582675367</id><published>2025-01-19T02:43:00.000-08:00</published><updated>2025-01-19T03:56:44.491-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="latex"/><title type='text'>How to Abbreviate Author Names in IEEEbib.bst</title><content type='html'>&lt;p&gt;When working with IEEE references in BibTeX, the IEEEbib.bst style is commonly used for IEEE conferences and journals. However, by &lt;b&gt;default, this style formats author names in full (e.g., &quot;John Smith&quot; rather than &quot;J. Smith&quot;). If you&#39;d like to abbreviate the first name to its initial&lt;/b&gt;, you can modify the IEEEbib.bst file by adjusting the way author names are formatted. For that you just need to modify the format.names function.&lt;/p&gt;&lt;p&gt;Find the format.names function in the IEEEbib.bst file. It looks like this:&lt;/p&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;FUNCTION {format.names}&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;{ &#39;s :=&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; #1 &#39;nameptr :=&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; s num.names$ &#39;numnames :=&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; numnames &#39;namesleft :=&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; &amp;nbsp; { namesleft #0 &amp;gt; }&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; &amp;nbsp; { s nameptr &quot;&lt;b&gt;{ff~}&lt;/b&gt;{vv~}{ll}{, jj}&quot; format.name$ &#39;t :=&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; nameptr #1 &amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;	&lt;/span&gt;{ namesleft #1 &amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&lt;span style=&quot;white-space: pre;&quot;&gt;	&lt;/span&gt;&amp;nbsp; &amp;nbsp; { &quot;, &quot; * t * }&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Just replace &lt;span style=&quot;font-family: courier;&quot;&gt;&lt;b&gt;{ff~}&lt;/b&gt;&lt;/span&gt; with &lt;span style=&quot;font-family: courier;&quot;&gt;&lt;b&gt;{f.~}&lt;/b&gt;&lt;/span&gt;&amp;nbsp;in the 7th line to abbreviate first names, i.e.&lt;/div&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; &amp;nbsp; { s nameptr &quot;&lt;b&gt;{f.~}&lt;/b&gt;{vv~}{ll}{, jj}&quot; format.name$ &#39;t :=&lt;/span&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/1667001455582675367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2025/01/how-to-abbreviate-author-names-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/1667001455582675367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/1667001455582675367'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2025/01/how-to-abbreviate-author-names-in.html' title='How to Abbreviate Author Names in IEEEbib.bst'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-1733766477962870890</id><published>2025-01-18T07:45:00.000-08:00</published><updated>2025-01-18T11:21:57.959-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="ssh"/><title type='text'>Slow SSHFS transfer speeds under OSX</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhUnUvhZJIUD5hcCCxwMA2onjTdUr3LWgG_pMaqeD_iKrCWmg89HKZxgmztGgCbwfcleL8AWPJvYI1OvyssAECBH79_6wIIffjUhgfEAIoNYaOWyUf2Ya-aWbSAn6uOkgJtDcL3aCiXdBPJ5Js6n5yftdk42EPQVnbCC0n8eM99icNih-bMKu9Kp-vsrVA&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img data-original-height=&quot;988&quot; data-original-width=&quot;1460&quot; height=&quot;218&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhUnUvhZJIUD5hcCCxwMA2onjTdUr3LWgG_pMaqeD_iKrCWmg89HKZxgmztGgCbwfcleL8AWPJvYI1OvyssAECBH79_6wIIffjUhgfEAIoNYaOWyUf2Ya-aWbSAn6uOkgJtDcL3aCiXdBPJ5Js6n5yftdk42EPQVnbCC0n8eM99icNih-bMKu9Kp-vsrVA=w320-h218&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;If you’ve noticed that SSHFS transfers are much slower (several times slower) than SCP on macOS, you&#39;re not alone. This issue seems to be tied to how macFUSE and SSHFS interact, particularly around I/O block size.&amp;nbsp;&lt;a href=&quot;https://github.com/libfuse/sshfs/issues/11#issuecomment-2514126102&quot; target=&quot;_blank&quot;&gt;A detailed discussion about the root cause of this problem can be found in a GitHub issue thread&lt;/a&gt;.&lt;p&gt;&lt;/p&gt;&lt;p&gt;The good news is that in the tread it is also proposed a fix: increase the I/O block size. By setting it to 1MB (-o iosize=1048576), I was able to significantly speed up transfers with just a small 10% overhead.&lt;/p&gt;&lt;p&gt;I applied this change by adding it to my ~/.zshrc (or ~/.bashrc):&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;font-size: x-small;&quot;&gt;&amp;nbsp;&lt;span style=&quot;font-family: courier;&quot;&gt;alias sshfs=&#39;sshfs -o iosize=1048576&#39;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;It&#39;s a quick win if you rely on SSHFS for remote file systems!&lt;br /&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/1733766477962870890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2025/01/slow-sshfs-transfer-speeds-under-osx.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/1733766477962870890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/1733766477962870890'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2025/01/slow-sshfs-transfer-speeds-under-osx.html' title='Slow SSHFS transfer speeds under OSX'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEhUnUvhZJIUD5hcCCxwMA2onjTdUr3LWgG_pMaqeD_iKrCWmg89HKZxgmztGgCbwfcleL8AWPJvYI1OvyssAECBH79_6wIIffjUhgfEAIoNYaOWyUf2Ya-aWbSAn6uOkgJtDcL3aCiXdBPJ5Js6n5yftdk42EPQVnbCC0n8eM99icNih-bMKu9Kp-vsrVA=s72-w320-h218-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-7696436763901076124</id><published>2024-11-22T09:21:00.000-08:00</published><updated>2024-11-25T08:29:59.872-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="color"/><category scheme="http://www.blogger.com/atom/ns#" term="image"/><category scheme="http://www.blogger.com/atom/ns#" term="latex"/><category scheme="http://www.blogger.com/atom/ns#" term="virtualization"/><title type='text'>Brighten an \includeimage image in LaTeX Using decodearray without modifying the file </title><content type='html'>&lt;p&gt;&lt;/p&gt;You can adjust the brightness of &lt;span style=&quot;font-family: arial;&quot;&gt;\includegraphics&lt;/span&gt; images in LaTeX without editing them!&lt;br /&gt;&lt;div&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEicyitxjru0_1gUzOE6qwG-dLb1kpO1S8m4hiZVZOIB3Nrxib2EtHTioL_mthH1LNGtzOfXCJ0jD5sLDPrK_oKYLJZnMN5qyuofW14l35c1Dboe1suasffc-X3BG3qfyg98s8UTHPZ4oadTVnHPqMffvpZR7hgKNMIRJSWODa2_hMAhZrvVELJq3nHsLZE&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;502&quot; data-original-width=&quot;288&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEicyitxjru0_1gUzOE6qwG-dLb1kpO1S8m4hiZVZOIB3Nrxib2EtHTioL_mthH1LNGtzOfXCJ0jD5sLDPrK_oKYLJZnMN5qyuofW14l35c1Dboe1suasffc-X3BG3qfyg98s8UTHPZ4oadTVnHPqMffvpZR7hgKNMIRJSWODa2_hMAhZrvVELJq3nHsLZE&quot; width=&quot;138&quot; /&gt;&lt;/a&gt;&lt;/p&gt;The &lt;span style=&quot;font-family: courier;&quot;&gt;decodearray&lt;/span&gt; option in the &lt;span style=&quot;font-family: courier;&quot;&gt;graphicx&lt;/span&gt; package allows you to modify the appearance of images directly within your document.&lt;br /&gt;This is especially useful if you need to tweak image brightness directly in your document without relying on external image editing tools.&lt;br /&gt;The decodearray feature relies on PDF features supported by modern LaTeX engines&amp;nbsp; such as LuaLaTeX or XeLaTeX.&amp;nbsp;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;\documentclass{article}&lt;br /&gt;\usepackage{graphicx}&lt;br /&gt;\begin{document}&lt;br /&gt;&lt;br /&gt;% Original RGB image&lt;br /&gt;\section*{Original Image}&lt;br /&gt;\includegraphics[width=0.5\textwidth]{example-image.jpg}&lt;br /&gt;&lt;br /&gt;% Brightened image using decodearray&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;\section*{Brightened RGB Image}&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;\includegraphics[width=0.5\textwidth, decodearray={0.2 0.5&amp;nbsp; &amp;nbsp;0.2 0.5&amp;nbsp; &amp;nbsp;0.2 0.5}]{uiskentuie_standing_stone.png}&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&lt;br /&gt;\end{document}&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;In the example &lt;span style=&quot;font-family: courier;&quot;&gt;decodearray={0.2 0.5&amp;nbsp; &amp;nbsp; 0.2 0.5&amp;nbsp; &amp;nbsp; 0.2 0.5}&lt;/span&gt; maps the original range [0, 1] for each one of the three RGB channels to a narrower, brighter range [0.2, 0.5].&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p&gt;source: https://tex.stackexchange.com/questions/29227/can-includegraphics-be-used-to-change-an-image-color/150219#150219&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/7696436763901076124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2024/11/brighten-includeimage-image-in-latex.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/7696436763901076124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/7696436763901076124'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2024/11/brighten-includeimage-image-in-latex.html' title='Brighten an \includeimage image in LaTeX Using decodearray without modifying the file '/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEicyitxjru0_1gUzOE6qwG-dLb1kpO1S8m4hiZVZOIB3Nrxib2EtHTioL_mthH1LNGtzOfXCJ0jD5sLDPrK_oKYLJZnMN5qyuofW14l35c1Dboe1suasffc-X3BG3qfyg98s8UTHPZ4oadTVnHPqMffvpZR7hgKNMIRJSWODa2_hMAhZrvVELJq3nHsLZE=s72-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-994353093235707164</id><published>2023-03-20T15:37:00.004-07:00</published><updated>2023-04-28T06:26:18.148-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="internet"/><category scheme="http://www.blogger.com/atom/ns#" term="interoperability"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="ssh"/><category scheme="http://www.blogger.com/atom/ns#" term="web"/><title type='text'>Running HTTPS and SSH over the same port with SSLH</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJ0-jPvTHI7vAdVHPeFdfeVVuNKJ16XLUZY2VlAXXZixAYR-NnOCBvSTWxu3gpKcpiUko0D0GxoSQ5U2a1hN46z5SmDinQL3Ppgc9uOuBtrOrMi4q8R9kQY41ZkT3mjWE9w51Xj18V1jd0T9mflgn2Of_9262As8FL8QBFsRICrKyFgLIOGwY6BYWH/s299/sslh.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;143&quot; data-original-width=&quot;299&quot; height=&quot;143&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJ0-jPvTHI7vAdVHPeFdfeVVuNKJ16XLUZY2VlAXXZixAYR-NnOCBvSTWxu3gpKcpiUko0D0GxoSQ5U2a1hN46z5SmDinQL3Ppgc9uOuBtrOrMi4q8R9kQY41ZkT3mjWE9w51Xj18V1jd0T9mflgn2Of_9262As8FL8QBFsRICrKyFgLIOGwY6BYWH/s1600/sslh.jpg&quot; width=&quot;299&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Do you need to access your network services from remote locations but are blocked by firewalls or other&lt;br /&gt; access restrictions? You might want to try SSLH, a powerful open-source tool that enables you to run multiple network services over a single port. This allows you to bypass firewalls and access your network services from anywhere. Here will show you how to use SSLH to run both HTTPS and SSH on the same port, but SSLH also supports HTTP and OpenVPN.&amp;nbsp;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;b&gt;Installing SSLH&lt;/b&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;SSLH is available in most Linux distributions&#39; package managers, so installation is straightforward. You can install SSLH using the following command:&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;$ sudo apt-get install sslh&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;b&gt;Configuring SSLH&lt;/b&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;Once SSLH is installed, you need to configure it to run both HTTPS and SSH on the same port. The configuration file for SSLH is usually located at /etc/default/sslh. In the configuration below SSLH listens on all available network interfaces on port 443, and it proxies SSH to port 22 of localhost and HTTPS to port 2443 of localhost.&amp;nbsp;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;div style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div trbidi=&quot;on&quot;&gt;&lt;div trbidi=&quot;on&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;DAEMON_OPTS=&quot;-u sslh -p 0.0.0.0:443 -s 127.0.0.1:22 -l 127.0.0.1:2443 -P /var/run/sslh.pid&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div trbidi=&quot;on&quot;&gt;&lt;div trbidi=&quot;on&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;RUN=yes&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;Before restarting SSLH, make sure to configure your web server to listen to 2443 instead of 443. Then, restart SSLH with&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;$ /etc/init.d/sslh start&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;b&gt;Testing SSLH&lt;/b&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;To test SSLH, you can try accessing both the HTTPS and SSH services through the SSLH port. For example, to access HTTPS, open a web browser and navigate to &lt;span style=&quot;font-family: courier;&quot;&gt;https://&amp;lt;your-server-address&amp;gt;:443&lt;/span&gt;. To access SSH, open a terminal and use the ssh command&amp;nbsp; &lt;span style=&quot;font-family: courier;&quot;&gt;ssh your-server-address -p 443&lt;/span&gt;.&amp;nbsp;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
source:&amp;nbsp;&lt;a href=&quot;https://memo-linux.com/sslh-https-et-ssh-sur-le-meme-port/&quot;&gt;https://memo-linux.com/sslh-https-et-ssh-sur-le-meme-port/&lt;/a&gt;,&amp;nbsp;&lt;a href=&quot;https://github.com/yrutschle/sslh&quot;&gt;https://github.com/yrutschle/sslh&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/994353093235707164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2019/03/sslh.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/994353093235707164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/994353093235707164'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2019/03/sslh.html' title='Running HTTPS and SSH over the same port with SSLH'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJ0-jPvTHI7vAdVHPeFdfeVVuNKJ16XLUZY2VlAXXZixAYR-NnOCBvSTWxu3gpKcpiUko0D0GxoSQ5U2a1hN46z5SmDinQL3Ppgc9uOuBtrOrMi4q8R9kQY41ZkT3mjWE9w51Xj18V1jd0T9mflgn2Of_9262As8FL8QBFsRICrKyFgLIOGwY6BYWH/s72-c/sslh.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-2847346010063955380</id><published>2023-03-20T15:08:00.008-07:00</published><updated>2023-04-28T06:28:43.116-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="interoperability"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="system"/><category scheme="http://www.blogger.com/atom/ns#" term="windows"/><title type='text'>Reset Windows passwords with chntpw using a Linux Live USB</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAbeHE-gQf__hYK04e28-7J58qwXicoxTlE4RbxaPbqVTH_7uE7i6k4soKbjaJY6tKLB5cSnpGL6TFXWeApcFbSpqRr1ZBSNb8k8aWCX9S5uTDpFlL_0ndd85ewr9vhK5n6BWOAKMo5wxuxL6vF_F93kGIKQYrmPiyhdMYhlAsxLLxl-4Ful7Cqgdv/s290/reset.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;174&quot; data-original-width=&quot;290&quot; height=&quot;120&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAbeHE-gQf__hYK04e28-7J58qwXicoxTlE4RbxaPbqVTH_7uE7i6k4soKbjaJY6tKLB5cSnpGL6TFXWeApcFbSpqRr1ZBSNb8k8aWCX9S5uTDpFlL_0ndd85ewr9vhK5n6BWOAKMo5wxuxL6vF_F93kGIKQYrmPiyhdMYhlAsxLLxl-4Ful7Cqgdv/w200-h120/reset.jpeg&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Have you ever forgotten your Windows login password and been locked out of your own computer?&lt;br /&gt; There is a way to reset your Windows password using a Linux Live USB drive and a tool called &lt;i&gt;&lt;b&gt;chntpw&lt;/b&gt;&lt;/i&gt;. Here, we will show how.&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step 1: Create a Linux Live USB drive&lt;/b&gt;&lt;/p&gt;&lt;p&gt;First, you&#39;ll need to &lt;a href=&quot;https://linuxtoosx.blogspot.com/2023/03/make-bootable-linuxubuntu-live-usb.html&quot;&gt;create a Linu&lt;/a&gt;&lt;a href=&quot;https://linuxtoosx.blogspot.com/2023/03/make-bootable-linuxubuntu-live-usb.html&quot; target=&quot;_blank&quot;&gt;x Live USB drive.&lt;/a&gt; You can use any Linux distribution that includes the chntpw package. We will be using Ubuntu:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Download the Ubuntu ISO file from the official website.&lt;/li&gt;&lt;li&gt;Burn the ISO file to a USB drive using a tool like Rufus or Etcher.&lt;/li&gt;&lt;li&gt;Boot your computer from the USB drive.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step 2: Install chntpw&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Once you have booted into the Linux Live USB, you&#39;ll need to install the &lt;i&gt;&lt;b&gt;chntpw&lt;/b&gt;&lt;/i&gt; package. To install &lt;b&gt;&lt;i&gt;chntpw&lt;/i&gt;&lt;/b&gt;, open a terminal and run the following command:&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo apt install chntpw&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;b&gt;Step 3: Mount the Windows partition&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Next, you&#39;ll need to mount the Windows partition that contains the password database. In the terminal, navigate to the directory where the Windows partition is mounted. This will typically be the &lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt;Windows/System32/config/&lt;/span&gt; directory.&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;cd ~/winmount/Windows/System32/config/&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;b&gt;Step 4: List the Windows users&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Now, list the Windows users stored in the password database by running the following command:&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo chntpw -l SAM&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;This will display a list of Windows users along with their corresponding User IDs (UIDs).&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step 5: Reset the Windows password&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Finally, you can reset the password for a specific Windows user by running the interactive command:&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;sudo chntpw -i SAM&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;This will launch a menu where you can select the user whose password you want to reset and also unlock accounts. Follow the prompts to reset the password. Then reboot into Windows.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Sources:&amp;nbsp;&lt;a href=&quot;https://doc.ubuntu-fr.org/tutoriel/chntpw&quot;&gt;https://doc.ubuntu-fr.org/tutoriel/chntpw&lt;/a&gt;;&amp;nbsp;&lt;a href=&quot;https://ostechnix.com/reset-windows-password-with-linux-live-cd/&quot;&gt;https://ostechnix.com/reset-windows-password-with-linux-live-cd/&lt;/a&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/2847346010063955380/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2023/03/reset-windows-passwords-with-chntpw.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/2847346010063955380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/2847346010063955380'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2023/03/reset-windows-passwords-with-chntpw.html' title='Reset Windows passwords with chntpw using a Linux Live USB'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAbeHE-gQf__hYK04e28-7J58qwXicoxTlE4RbxaPbqVTH_7uE7i6k4soKbjaJY6tKLB5cSnpGL6TFXWeApcFbSpqRr1ZBSNb8k8aWCX9S5uTDpFlL_0ndd85ewr9vhK5n6BWOAKMo5wxuxL6vF_F93kGIKQYrmPiyhdMYhlAsxLLxl-4Ful7Cqgdv/s72-w200-h120-c/reset.jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-6619896452751147904</id><published>2023-03-20T14:45:00.002-07:00</published><updated>2023-04-28T06:30:44.657-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="interoperability"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="unix"/><title type='text'>Make a bootable Linux/Ubuntu live USB drive on OS X</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Gs_WdD3Ak6Gd_r-xZQT5t748S2oLu1xIRsen7YoUhoy-XgCj0T4Y5P9ZjsmD2Z9bZpzFVfW67w1mIRAsrIl-V8vpyYKu9M37KrN57FUBaN9KFdDeigjDRzI1lml8Y2ReZFkTAJKUVxGKTfgFcP91OiGf0OIV7IKpO9cZ9j46hc2p8Lm5FzCtsySZ/s229/boot.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;229&quot; data-original-width=&quot;220&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Gs_WdD3Ak6Gd_r-xZQT5t748S2oLu1xIRsen7YoUhoy-XgCj0T4Y5P9ZjsmD2Z9bZpzFVfW67w1mIRAsrIl-V8vpyYKu9M37KrN57FUBaN9KFdDeigjDRzI1lml8Y2ReZFkTAJKUVxGKTfgFcP91OiGf0OIV7IKpO9cZ9j46hc2p8Lm5FzCtsySZ/w192-h200/boot.jpeg&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;We&#39;ll see how to create a bootable Linux/Ubuntu USB drive, from an ISO image, on OS X using command line commands.&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step 1: Download the Ubuntu Image&lt;/b&gt;&lt;/p&gt;&lt;p&gt;The first step is to download the Ubuntu image from the official website. Live CD images allow to run Ubuntu without installing it. Here, we&#39;ll use an old Ubuntu 16 image&amp;nbsp;from&amp;nbsp;&lt;a href=&quot;https://releases.ubuntu.com/xenial/&quot;&gt;https://releases.ubuntu.com/xenial/&lt;/a&gt;: &lt;a href=&quot;https://releases.ubuntu.com/xenial/ubuntu-16.04.6-desktop-i386.iso&quot;&gt;ubuntu-16.04.6-desktop-i386.iso&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step 2: Identify the USB Drive&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Next you&#39;ll need to identify the USB drive that you want to use for the installation. You can do this by opening up a Terminal window and typing:&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;$ diskutil list&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;This command will list all of the disks currently connected to your computer. Identify the USB drive that you want to use for the installation and take note of its device identifier (e.g., /dev/disk2).&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step 3: Unmount the USB Drive&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Before you can write the Ubuntu image to the USB drive, you need to make sure that it&#39;s unmounted. To do this, type the following command into the Terminal:&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt;$ diskutil unmountDisk /dev/disk2&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Note: Make sure to replace /dev/disk2 with the device identifier of your USB drive.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step 4: Write the Ubuntu Image to the USB Drive&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Now that your USB drive is unmounted, you can write the Ubuntu image to it using the dd command. Type the following command into the Terminal:&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt;$ sudo dd if=~/Downloads/ubuntu-16.04.6-desktop-i386.iso&amp;nbsp;of=/dev/rdisk2 bs=1048576&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Note: Make sure to replace ~/Downloads/ubuntu-16.04.6-desktop-i386.iso&amp;nbsp;with the path to the Ubuntu image on your computer, and /dev/rdisk2 with the device identifier of your USB drive.&lt;/p&gt;&lt;p&gt;The dd command will take some time to complete, so be patient. Once it&#39;s finished, you should see a message indicating how many bytes were transferred.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step 5: Eject the USB Drive&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Finally, you need to eject the USB drive to ensure that all of the data has been written correctly. Type the following command into the Terminal:&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px;&quot;&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt;$ diskutil eject /dev/disk2&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Note: Make sure to replace /dev/disk2 with the device identifier of your USB drive.&lt;/p&gt;&lt;p&gt;That&#39;s it! You&#39;ve successfully created a bootable Ubuntu USB drive using command line commands on OS X. You can now use this USB drive to install or run Ubuntu on any computer that supports booting from USB.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Source:&amp;nbsp;&lt;a href=&quot;https://thornelabs.net/posts/create-a-bootable-ubuntu-usb-drive-in-os-x/&quot;&gt;https://thornelabs.net/posts/create-a-bootable-ubuntu-usb-drive-in-os-x/&lt;/a&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/6619896452751147904/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2023/03/make-bootable-linuxubuntu-live-usb.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/6619896452751147904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/6619896452751147904'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2023/03/make-bootable-linuxubuntu-live-usb.html' title='Make a bootable Linux/Ubuntu live USB drive on OS X'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Gs_WdD3Ak6Gd_r-xZQT5t748S2oLu1xIRsen7YoUhoy-XgCj0T4Y5P9ZjsmD2Z9bZpzFVfW67w1mIRAsrIl-V8vpyYKu9M37KrN57FUBaN9KFdDeigjDRzI1lml8Y2ReZFkTAJKUVxGKTfgFcP91OiGf0OIV7IKpO9cZ9j46hc2p8Lm5FzCtsySZ/s72-w192-h200-c/boot.jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-1068781271123042224</id><published>2022-11-20T09:27:00.006-08:00</published><updated>2023-04-28T06:21:44.950-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="code"/><category scheme="http://www.blogger.com/atom/ns#" term="network"/><category scheme="http://www.blogger.com/atom/ns#" term="productivity"/><category scheme="http://www.blogger.com/atom/ns#" term="programming"/><category scheme="http://www.blogger.com/atom/ns#" term="python"/><category scheme="http://www.blogger.com/atom/ns#" term="web"/><title type='text'>Download files from google drive with python - no API key</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_kEUytPC2rw1t3J-17gqsha3MfyHaOmsBBRbj81JEMoua4aM-z6mJs2LR9ibG8u4a69gX2s1qQ-S5eXu3UZnfyP7HWtBh4Es7A9V0s4fiomYS2slXFfDHGbRbEuk9Z5fhoYpc-IkNDS0RZ14dw0Tp-sJSyFchoYru35jjBsSgF3iIUUojvc33GCJY/s133/download.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;133&quot; data-original-width=&quot;69&quot; height=&quot;133&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_kEUytPC2rw1t3J-17gqsha3MfyHaOmsBBRbj81JEMoua4aM-z6mJs2LR9ibG8u4a69gX2s1qQ-S5eXu3UZnfyP7HWtBh4Es7A9V0s4fiomYS2slXFfDHGbRbEuk9Z5fhoYpc-IkNDS0RZ14dw0Tp-sJSyFchoYru35jjBsSgF3iIUUojvc33GCJY/s1600/download.jpg&quot; width=&quot;69&quot; /&gt;&lt;/a&gt;&lt;/div&gt;There are several scripts to download files from google drive using a shareable link. Some require&lt;br /&gt; authentication others don&#39;t work. Here we&#39;re interested in those that do not require authentication.&lt;p&gt;&lt;/p&gt;&lt;p&gt;The &lt;a href=&quot;https://github.com/matthuisman/gdrivedl/blob/master/gdrivedl.py&quot;&gt;gdrivedl.py&lt;/a&gt; script provided by &lt;a href=&quot;https://github.com/ndrplz&quot;&gt;ndrplz&lt;/a&gt;&amp;nbsp;just works fine.&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt;&amp;gt; gdrivedl.py file_id&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Another notable, currently non-working, alternative is googledrivedownloader. It probably worked at some point in time but today it fails. There&#39;s however &lt;a href=&quot;https://stackoverflow.com/questions/38511444/python-download-files-from-google-drive-using-url&quot;&gt;a simple fix proposed in this thread&lt;/a&gt;. The code is here:&amp;nbsp;&lt;/p&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div&gt;&lt;pre class=&quot;python&quot; style=&quot;box-sizing: border-box; color: #212529; flex-shrink: 0; font-size: 0.875em; margin-bottom: 1rem; margin-top: var(--bs-gutter-y); max-width: 100%; overflow: auto; padding-left: calc(var(--bs-gutter-x) * 0.5); padding-right: calc(var(--bs-gutter-x) * 0.5); width: 854px;&quot;&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;&lt;div class=&quot;row mt-2&quot; id=&quot;preview&quot; style=&quot;--bs-gutter-x: 1.5rem; --bs-gutter-y: 0; -webkit-text-stroke-width: 0px; border-radius: 0.25rem; border: 1px solid rgb(206, 212, 218); box-sizing: border-box; color: #212529; display: flex; flex-wrap: wrap; font-family: &amp;quot;Lucida Console&amp;quot;, Courier, monospace; font-size: 0.9rem; margin-left: calc(-0.5 * var(--bs-gutter-x)); margin-right: calc(-0.5 * var(--bs-gutter-x)); margin-top: 0.5rem; min-height: 200px; padding: 0.375rem 0.75rem; white-space: normal;&quot;&gt;&lt;pre class=&quot;python&quot; style=&quot;box-sizing: border-box; flex-shrink: 0; font-size: 0.875em; margin-bottom: 1rem; margin-top: var(--bs-gutter-y); max-width: 100%; overflow: auto; padding-left: calc(var(--bs-gutter-x) * 0.5); padding-right: calc(var(--bs-gutter-x) * 0.5); width: 613.984px;&quot;&gt;&lt;pre class=&quot;python&quot; style=&quot;box-sizing: border-box; flex-shrink: 0; font-size: 0.875em; margin-bottom: 1rem; margin-top: var(--bs-gutter-y); max-width: 100%; overflow: auto; padding-left: calc(var(--bs-gutter-x) * 0.5); padding-right: calc(var(--bs-gutter-x) * 0.5); width: 854px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt;&lt;span&gt; requests
&amp;nbsp;
&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;def&lt;/span&gt;&lt;span&gt; download_file_from_google_drive&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: green;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; destination&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;:
    URL &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;https://docs.google.com/uc?export=download&quot;&lt;/span&gt;&lt;span&gt;
&amp;nbsp;
    session &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; requests.&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;Session&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;
&amp;nbsp;
    response &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; session.&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;get&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;URL&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; params&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fff2cc;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;id&quot;&lt;/span&gt;: &lt;span style=&quot;box-sizing: border-box; color: green;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;confirm&quot;&lt;/span&gt;: &lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; stream&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: green;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;
    &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: crimson;&quot;&gt;token&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; get_confirm_token&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;response&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;
&amp;nbsp;
    &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: crimson;&quot;&gt;token&lt;/span&gt;&lt;span&gt;:
        params &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;id&quot;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: green;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;confirm&quot;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: crimson;&quot;&gt;token&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;}&lt;/span&gt;&lt;span&gt;
        response &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; session.&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;get&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;URL&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; params&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt;params&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; stream&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: green;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;
&amp;nbsp;
    save_response_content&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;response&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; destination&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;
&amp;nbsp;
&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;def&lt;/span&gt;&lt;span&gt; get_confirm_token&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;response&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;:
    &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;for&lt;/span&gt;&lt;span&gt; key&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; value &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;in&lt;/span&gt;&lt;span&gt; response.&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;cookies&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;items&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;:
        &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span&gt; key.&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;startswith&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;download_warning&quot;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;:
            &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;return&lt;/span&gt;&lt;span&gt; value
    &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;return&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: green;&quot;&gt;None&lt;/span&gt;&lt;span&gt;
&amp;nbsp;
&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;def&lt;/span&gt;&lt;span&gt; save_response_content&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;response&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; destination&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;:
    CHUNK_SIZE &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;32768&lt;/span&gt;&lt;span&gt;
&amp;nbsp;
    &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;with&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: green;&quot;&gt;open&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;destination&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;wb&quot;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;as&lt;/span&gt;&lt;span&gt; f:
        &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;for&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: crimson;&quot;&gt;chunk&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;in&lt;/span&gt;&lt;span&gt; response.&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;iter_content&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;CHUNK_SIZE&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;:
            &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: crimson;&quot;&gt;chunk&lt;/span&gt;&lt;span&gt;:  &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: grey; font-style: italic;&quot;&gt;# filter out keep-alive new chunks&lt;/span&gt;&lt;span&gt;
                f.&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;write&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: crimson;&quot;&gt;chunk&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span&gt;
&amp;nbsp;
&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;if&lt;/span&gt;&lt;span&gt; __name__ &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;__main__&quot;&lt;/span&gt;&lt;span&gt;:
    file_id &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;TAKE ID FROM SHAREABLE LINK&quot;&lt;/span&gt;&lt;span&gt;
    destination &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;DESTINATION FILE ON YOUR DISK&quot;&lt;/span&gt;&lt;span&gt;
    download_file_from_google_drive&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span&gt;file_id&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span&gt; destination&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/1068781271123042224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2022/11/scripts-to-download-files-from-google.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/1068781271123042224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/1068781271123042224'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2022/11/scripts-to-download-files-from-google.html' title='Download files from google drive with python - no API key'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_kEUytPC2rw1t3J-17gqsha3MfyHaOmsBBRbj81JEMoua4aM-z6mJs2LR9ibG8u4a69gX2s1qQ-S5eXu3UZnfyP7HWtBh4Es7A9V0s4fiomYS2slXFfDHGbRbEuk9Z5fhoYpc-IkNDS0RZ14dw0Tp-sJSyFchoYru35jjBsSgF3iIUUojvc33GCJY/s72-c/download.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-2543121274977178256</id><published>2022-11-13T01:27:00.005-08:00</published><updated>2022-11-13T01:29:53.866-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="code"/><category scheme="http://www.blogger.com/atom/ns#" term="image"/><category scheme="http://www.blogger.com/atom/ns#" term="python"/><title type='text'>Fix your matplotlib colorbars!</title><content type='html'>&lt;p&gt;Matplotlib colorbars are a mess, especially if using subplots I often get tall bars like in this case&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEglpzxnWvlZSaT3i_vo7pC1xe9fhcQT92VM8h7-gk9aUX9Lj1jjT8kvbfQVjCyXOZ6oJEoAbdsL5GybFrQwK6-X-LZHKgfFedO3vlqukyn6lwLePbPlG1AgCFWlJQQnHYKZQ2I954VSuCfLw2gc_BPqOrY9M7xma18sWrUxVa_nwuES2eULxqBabPO6&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;294&quot; data-original-width=&quot;436&quot; height=&quot;135&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEglpzxnWvlZSaT3i_vo7pC1xe9fhcQT92VM8h7-gk9aUX9Lj1jjT8kvbfQVjCyXOZ6oJEoAbdsL5GybFrQwK6-X-LZHKgfFedO3vlqukyn6lwLePbPlG1AgCFWlJQQnHYKZQ2I954VSuCfLw2gc_BPqOrY9M7xma18sWrUxVa_nwuES2eULxqBabPO6=w200-h135&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;span style=&quot;text-align: center;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-align: center;&quot;&gt;but instead I wanted&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-align: center;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEgmjrdTWQzU7hZxkqhunHi03gYoXeHJoCKM2Z9ir6KuX2JcM3fMPSr7GNCcL3jhBjqKjtrkt2o1A1x_lHC6d8KH6zMTL87wRHPsiU9gi40x-xuKZJ_JJkuv7b-qMHUQ5VGdKVu9QPMcFFocr-tJAT8vMwyf_7bSpEHoXuzl1zlRLkoU8yfKdzVRV-oQ&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;206&quot; data-original-width=&quot;438&quot; height=&quot;94&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEgmjrdTWQzU7hZxkqhunHi03gYoXeHJoCKM2Z9ir6KuX2JcM3fMPSr7GNCcL3jhBjqKjtrkt2o1A1x_lHC6d8KH6zMTL87wRHPsiU9gi40x-xuKZJ_JJkuv7b-qMHUQ5VGdKVu9QPMcFFocr-tJAT8vMwyf_7bSpEHoXuzl1zlRLkoU8yfKdzVRV-oQ=w200-h94&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;b&gt;&lt;a href=&quot;https://joseph-long.com/writing/colorbars/ &quot; target=&quot;_blank&quot;&gt;This great article by Joseph Long&lt;/a&gt;&amp;nbsp;describes this issue in detail and provides some solutions.&amp;nbsp;&lt;/b&gt;&lt;br /&gt;The code for generating the first figure is&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;row justify-content-between mt-4&quot; style=&quot;--bs-gutter-x: 1.5rem; --bs-gutter-y: 0; -webkit-text-stroke-width: 0px; background-color: white; box-sizing: border-box; color: #212529; display: flex; flex-wrap: wrap; font-family: system-ui, -apple-system, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Noto Sans&amp;quot;, &amp;quot;Liberation Sans&amp;quot;, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Noto Color Emoji&amp;quot;; font-size: 16px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; justify-content: space-between; letter-spacing: normal; margin-left: calc(-0.5 * var(--bs-gutter-x)); margin-right: calc(-0.5 * var(--bs-gutter-x)); margin-top: 1.5rem; orphans: 2; text-align: start; text-decoration-color: initial; text-decoration-style: initial; text-decoration-thickness: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;&quot;&gt;&lt;div class=&quot;col-3&quot; style=&quot;box-sizing: border-box; flex: 0 0 auto; margin-top: var(--bs-gutter-y); max-width: 100%; padding-left: calc(var(--bs-gutter-x) * 0.5); padding-right: calc(var(--bs-gutter-x) * 0.5); width: 159.984px;&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;row mt-2&quot; id=&quot;preview&quot; style=&quot;--bs-gutter-x: 1.5rem; --bs-gutter-y: 0; -webkit-text-stroke-width: 0px; background-color: white; border-radius: 0.25rem; border: 1px solid rgb(206, 212, 218); box-sizing: border-box; color: #212529; display: flex; flex-wrap: wrap; font-family: &amp;quot;Lucida Console&amp;quot;, Courier, monospace; font-size: 0.9rem; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; margin-left: calc(-0.5 * var(--bs-gutter-x)); margin-right: calc(-0.5 * var(--bs-gutter-x)); margin-top: 0.5rem; min-height: 200px; orphans: 2; padding: 0.375rem 0.75rem; text-align: start; text-decoration-color: initial; text-decoration-style: initial; text-decoration-thickness: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;&quot;&gt;&lt;pre class=&quot;python&quot; style=&quot;box-sizing: border-box; display: block; flex-shrink: 0; font-family: monospace; font-size: 0.875em; margin-bottom: 1rem; margin-top: var(--bs-gutter-y); max-width: 100%; overflow: auto; padding-left: calc(var(--bs-gutter-x) * 0.5); padding-right: calc(var(--bs-gutter-x) * 0.5); width: 613.984px;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; matplotlib.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;pyplot&lt;/span&gt; &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;as&lt;/span&gt; plt
&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt; skimage &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; img_as_float&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; data&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; color&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; transform
&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt; scipy &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; ndimage&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;box-sizing: border-box; color: crimson;&quot;&gt;signal&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; fft&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; io
&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; numpy &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;as&lt;/span&gt; np
&amp;nbsp;
img &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; color.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;rgb2gray&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;img_as_float&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;data.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;astronaut&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
I1 &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; np.&lt;span style=&quot;box-sizing: border-box; color: green;&quot;&gt;abs&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;fft.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;fft2&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;img&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; norm&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&#39;ortho&#39;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;**&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;
&lt;span style=&quot;box-sizing: border-box; color: grey; font-style: italic;&quot;&gt;#plt.figure(figsize=(7.5,2.5))&lt;/span&gt;
&amp;nbsp;
subplotnum&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;
&amp;nbsp;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;subplot&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;subplotnum&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;;&lt;/span&gt; subplotnum+&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;imshow&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;img&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;colorbar&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;title&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&#39;image&#39;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;subplot&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;subplotnum&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;;&lt;/span&gt; subplotnum+&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;imshow&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;np.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;log&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;fft.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;fftshift&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;I1&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;+&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;1e-6&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;colorbar&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;yticks&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;]&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;           &lt;span style=&quot;box-sizing: border-box; color: grey; font-style: italic;&quot;&gt;# desable yticks in the second image&lt;/span&gt;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;title&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&#39;log spectrum&#39;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
&amp;nbsp;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;tight_layout&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;pad&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;0.4&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; w_pad&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;0.5&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; h_pad&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;1.0&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;show&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;   &lt;/pre&gt;&lt;/div&gt;&lt;p&gt;A solution provided in the article consists in using a custom colorbar, the&lt;span style=&quot;background-color: #fff2cc;&quot;&gt; important changes are highlighted&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;row justify-content-between mt-4&quot; style=&quot;--bs-gutter-x: 1.5rem; --bs-gutter-y: 0; -webkit-text-stroke-width: 0px; background-color: white; box-sizing: border-box; color: #212529; display: flex; flex-wrap: wrap; font-family: system-ui, -apple-system, &amp;quot;Segoe UI&amp;quot;, Roboto, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;Noto Sans&amp;quot;, &amp;quot;Liberation Sans&amp;quot;, Arial, sans-serif, &amp;quot;Apple Color Emoji&amp;quot;, &amp;quot;Segoe UI Emoji&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Noto Color Emoji&amp;quot;; font-size: 16px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; justify-content: space-between; letter-spacing: normal; margin-left: calc(-0.5 * var(--bs-gutter-x)); margin-right: calc(-0.5 * var(--bs-gutter-x)); margin-top: 1.5rem; orphans: 2; text-align: start; text-decoration-color: initial; text-decoration-style: initial; text-decoration-thickness: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;&quot;&gt;&lt;div class=&quot;col-3&quot; style=&quot;box-sizing: border-box; flex: 0 0 auto; margin-top: var(--bs-gutter-y); max-width: 100%; padding-left: calc(var(--bs-gutter-x) * 0.5); padding-right: calc(var(--bs-gutter-x) * 0.5); width: 159.984px;&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;row mt-2&quot; id=&quot;preview&quot; style=&quot;--bs-gutter-x: 1.5rem; --bs-gutter-y: 0; -webkit-text-stroke-width: 0px; border-radius: 0.25rem; border: 1px solid rgb(206, 212, 218); box-sizing: border-box; color: #212529; display: flex; flex-wrap: wrap; font-family: &amp;quot;Lucida Console&amp;quot;, Courier, monospace; font-size: 0.9rem; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; margin-left: calc(-0.5 * var(--bs-gutter-x)); margin-right: calc(-0.5 * var(--bs-gutter-x)); margin-top: 0.5rem; min-height: 200px; orphans: 2; padding: 0.375rem 0.75rem; text-align: start; text-decoration-color: initial; text-decoration-style: initial; text-decoration-thickness: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;&quot;&gt;&lt;pre class=&quot;python&quot; style=&quot;box-sizing: border-box; display: block; flex-shrink: 0; font-family: monospace; font-size: 0.875em; margin-bottom: 1rem; margin-top: var(--bs-gutter-y); max-width: 100%; overflow: auto; padding-left: calc(var(--bs-gutter-x) * 0.5); padding-right: calc(var(--bs-gutter-x) * 0.5); width: 613.984px;&quot;&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; matplotlib.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;pyplot&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;as&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; plt
&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; skimage &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; img_as_float&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; data&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; color&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; transform
&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; scipy &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; ndimage&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: crimson;&quot;&gt;signal&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; fft&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; io
&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; numpy &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;as&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; np
&amp;nbsp;
&lt;/span&gt;&lt;span style=&quot;background-color: #fff2cc;&quot;&gt;&lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;def&lt;/span&gt; colorbar&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;mappable&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;:
    &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt; mpl_toolkits.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;axes_grid1&lt;/span&gt; &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; make_axes_locatable
    &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; matplotlib.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;pyplot&lt;/span&gt; &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;as&lt;/span&gt; plt
    last_axes &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;gca&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
    ax &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; mappable.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;axes&lt;/span&gt;
    fig &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; ax.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;figure&lt;/span&gt;
    divider &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; make_axes_locatable&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;ax&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
    cax &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; divider.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;append_axes&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;right&quot;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; size&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: darkslateblue;&quot;&gt;&quot;5%&quot;&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; pad&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: orangered;&quot;&gt;0.05&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
    cbar &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; fig.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;colorbar&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;mappable&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt; cax&lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;cax&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
    plt.&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;sca&lt;/span&gt;&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;last_axes&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
    &lt;span style=&quot;box-sizing: border-box; color: #ff7700; font-weight: bold;&quot;&gt;return&lt;/span&gt; cbar&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&amp;nbsp;
img &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; color.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;rgb2gray&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;img_as_float&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;data.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;astronaut&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
I1 &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; np.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: green;&quot;&gt;abs&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;fft.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;fft2&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;img&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; norm&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: darkslateblue;&quot;&gt;&#39;ortho&#39;&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;**&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&amp;nbsp;&amp;nbsp;
subplotnum&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&amp;nbsp;
aa &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; plt.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;subplot&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;subplotnum&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; subplotnum+&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;background-color: #fff2cc;&quot;&gt;ax &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; &lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;plt.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;imshow&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;img&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;background-color: #fff2cc;&quot;&gt;colorbar&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;ax&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;aa.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;set_title&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: darkslateblue;&quot;&gt;&#39;image&#39;&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; size&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;14&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&amp;nbsp;
aa &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; plt.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;subplot&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;subplotnum&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;;&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; subplotnum+&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;background-color: #fff2cc;&quot;&gt;ax &lt;span style=&quot;box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt; &lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;plt.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;imshow&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;np.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;log&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;fft.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;fftshift&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;I1&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;1e-6&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&lt;/span&gt;&lt;span style=&quot;background-color: #fff2cc;&quot;&gt;colorbar&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;ax&lt;span style=&quot;box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
aa.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;get_yaxis&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;set_ticks&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;]&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: grey; font-style: italic;&quot;&gt;# desable yticks in the second image&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
aa.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;set_title&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: darkslateblue;&quot;&gt;&#39;log spectrum&#39;&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; size&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;14&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
&amp;nbsp;
plt.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;tight_layout&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;pad&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;0.4&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; w_pad&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;0.5&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt; h_pad&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: #66cc66;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: orangered;&quot;&gt;1.0&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;
plt.&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;show&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: white; box-sizing: border-box; color: black;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;background-color: white;&quot;&gt;    &lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/2543121274977178256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2022/11/fix-your-matplotlib-colorbars.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/2543121274977178256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/2543121274977178256'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2022/11/fix-your-matplotlib-colorbars.html' title='Fix your matplotlib colorbars!'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEglpzxnWvlZSaT3i_vo7pC1xe9fhcQT92VM8h7-gk9aUX9Lj1jjT8kvbfQVjCyXOZ6oJEoAbdsL5GybFrQwK6-X-LZHKgfFedO3vlqukyn6lwLePbPlG1AgCFWlJQQnHYKZQ2I954VSuCfLw2gc_BPqOrY9M7xma18sWrUxVa_nwuES2eULxqBabPO6=s72-w200-h135-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-6460467544158723780</id><published>2021-10-08T02:02:00.008-07:00</published><updated>2022-05-15T09:33:18.126-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="latex"/><category scheme="http://www.blogger.com/atom/ns#" term="shell"/><category scheme="http://www.blogger.com/atom/ns#" term="unix"/><category scheme="http://www.blogger.com/atom/ns#" term="windows"/><title type='text'>pandoc: quite good conversion from Latex to docx with references and preserving tikz figures</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNQF0fTwPmOWbloJbTqCeXXHeUFgEcpZA64qGNe1WuTUtREyN1YzWJuJVGrhiAAqOfPrX6Rhkvxb1b5xmyaM7f4qLpZMnCzZ3dm6PHXSpMA2Lex24iZzTkLLXa33UWin-LtZxuGL0l8BE/&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;133&quot; data-original-width=&quot;311&quot; height=&quot;86&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNQF0fTwPmOWbloJbTqCeXXHeUFgEcpZA64qGNe1WuTUtREyN1YzWJuJVGrhiAAqOfPrX6Rhkvxb1b5xmyaM7f4qLpZMnCzZ3dm6PHXSpMA2Lex24iZzTkLLXa33UWin-LtZxuGL0l8BE/w200-h86/image.png&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;This works surprisingly well, with all the figures and even rendering the BibTex references:&amp;nbsp;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt;&amp;gt;&amp;nbsp;pandoc -C -s main.tex --natbib -o main.docx&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;this will produce a document with &lt;u&gt;citations &lt;/u&gt;using the&amp;nbsp; (Author, year) format, to produce citations with a numeric format download the &lt;a href=&quot;https://raw.githubusercontent.com/citation-style-language/styles/master/ieee.csl&quot; target=&quot;_blank&quot;&gt;ieee.csl file&lt;/a&gt; and call:&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt;&amp;gt; pandoc -C -s main.tex --natbib --csl=ieee.csl&amp;nbsp; -o main.docx&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To preserve &lt;u&gt;tikz figures&lt;/u&gt; a specialized&lt;a href=&quot;https://gist.githubusercontent.com/gfacciol/4099a3e28a2a29611d1d3323071f7be0/raw/25c735cf7bf19ae893fc42e69d5193e3f748f519/tikz-to-png.lua&quot; target=&quot;_blank&quot;&gt; tikz-to-png filter&lt;/a&gt; is needed.&amp;nbsp; It should be downloaded in the current directory and use the call:&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier; font-size: small;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt; pandoc -C -s main.tex --natbib --csl=ieee.csl&amp;nbsp;&amp;nbsp;--from latex+raw_tex&amp;nbsp;--lua-filter=tikz-to-png.lua&amp;nbsp;-o main.docx&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Figure numbers and captions are not preserved (for obscure reasons), however&amp;nbsp;&amp;nbsp;&lt;u&gt;table numbering&lt;/u&gt; can be&amp;nbsp; preserved using the document type&amp;nbsp; &lt;span style=&quot;font-family: courier;&quot;&gt;-t odt+native_numbering&amp;nbsp;&amp;nbsp;&lt;/span&gt;or &lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;-t docx+native_numbering.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier; font-size: small;&quot;&gt;&amp;gt; &lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;pandoc -C -s main.tex --natbib --csl=ieee.csl&amp;nbsp;&amp;nbsp;--from latex+raw_tex&amp;nbsp;--lua-filter=tikz-to-png.lua&amp;nbsp;-t docx+native_numbering&amp;nbsp;-o main.docx&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Cross-references to sections and figures tables can be recovered with the&amp;nbsp;&lt;a href=&quot;https://github.com/openjournals/inara/blob/main/data/filters/resolve-references.lua&quot; target=&quot;_blank&quot;&gt;resolve-references&lt;/a&gt;&amp;nbsp;filter but the final format won&#39;t be great&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-family: courier; font-size: small;&quot;&gt;&amp;gt; &lt;/span&gt;&lt;span style=&quot;font-family: courier; font-size: x-small;&quot;&gt;pandoc -C -s main.tex --natbib --csl=ieee.csl&amp;nbsp;&amp;nbsp;--from latex+raw_tex&amp;nbsp;--lua-filter=tikz-to-png.lua&amp;nbsp;--lua-filter=resolve-references.lua&amp;nbsp;-t docx+native_numbering&amp;nbsp;-o main.docx&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Sources:&amp;nbsp;&lt;br /&gt;&lt;a href=&quot;https://waterprogramming.wordpress.com/2018/08/26/converting-latex-to-ms-word-docx-almost-perfectly/&quot;&gt;https://waterprogramming.wordpress.com/2018/08/26/converting-latex-to-ms-word-docx-almost-perfectly/&lt;br /&gt;&lt;/a&gt;&lt;a href=&quot;https://tex.stackexchange.com/questions/268196/how-to-convert-latex-to-word-using-pandoc-and-keep-citations-as-numeral&quot;&gt;https://tex.stackexchange.com/questions/268196/how-to-convert-latex-to-word-using-pandoc-and-keep-citations-as-numeral&lt;/a&gt;&lt;div&gt;&lt;a href=&quot;https://tex.stackexchange.com/questions/431719/how-to-use-pandoc-to-derive-output-from-latex-and-tikz-to-a-docx-file&quot;&gt;https://tex.stackexchange.com/questions/431719/how-to-use-pandoc-to-derive-output-from-latex-and-tikz-to-a-docx-file&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;https://pandoc.org/lua-filters.html#building-images-with-tikz&quot;&gt;https://pandoc.org/lua-filters.html#building-images-with-tikz&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;https://github.com/jgm/pandoc/issues/5474&quot;&gt;https://github.com/jgm/pandoc/issues/5474&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;https://stackoverflow.com/questions/70087575/how-it-is-possible-to-convert-latex-document-to-word-docx-file-with-all-cross&quot;&gt;https://stackoverflow.com/questions/70087575/how-it-is-possible-to-convert-latex-document-to-word-docx-file-with-all-cross&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/6460467544158723780/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2021/10/pandoc-quite-good-conversion-from-latex.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/6460467544158723780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/6460467544158723780'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2021/10/pandoc-quite-good-conversion-from-latex.html' title='pandoc: quite good conversion from Latex to docx with references and preserving tikz figures'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNQF0fTwPmOWbloJbTqCeXXHeUFgEcpZA64qGNe1WuTUtREyN1YzWJuJVGrhiAAqOfPrX6Rhkvxb1b5xmyaM7f4qLpZMnCzZ3dm6PHXSpMA2Lex24iZzTkLLXa33UWin-LtZxuGL0l8BE/s72-w200-h86-c/image.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-7168568170606274060</id><published>2021-09-02T08:22:00.003-07:00</published><updated>2021-12-07T02:04:24.213-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="color"/><category scheme="http://www.blogger.com/atom/ns#" term="latex"/><category scheme="http://www.blogger.com/atom/ns#" term="productivity"/><category scheme="http://www.blogger.com/atom/ns#" term="programming"/><title type='text'>Conditional formatting LaTeX tables depending on cell values</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;span&gt;A package for generating conditional formatted LaTeX tables that extends the one proposed in a post by&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://www.siavoosh.com/blog/2019/01/05/latex-table-cell-coloring-based-on-values-in-the-cell/#respond&quot;&gt;Siavoosh Payandeh Azad&lt;/a&gt;&lt;span&gt;. I&#39;ve just extended it with the command&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;\gradientd&lt;/span&gt;&lt;span&gt;&amp;nbsp;for a divergent colormap. There are also several other solutions discussed in this&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://tex.stackexchange.com/questions/174998/are-there-an-easy-way-to-coloring-tables-depending-on-the-value-in-each-cell&quot;&gt;stackexchange post&lt;/a&gt;&lt;span&gt;. The example can be seen in &lt;a href=&quot;https://www.overleaf.com/read/gqxsqrnxrpzx&quot;&gt;Overleaf here&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxt3rLbFExkMcqdzScVqZJwyBuGpqxDhMsnlwAeBQMAspfiaG-CpDGSHl4zAVZbk1EsEVBoqnZ3hO1XTE2CmPbmk9GeczS5zpy7mgQkVRkVexNG29Gymw8LeLxsnyczTg2X_wMBZ290vw/&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;202&quot; data-original-width=&quot;638&quot; height=&quot;101&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxt3rLbFExkMcqdzScVqZJwyBuGpqxDhMsnlwAeBQMAspfiaG-CpDGSHl4zAVZbk1EsEVBoqnZ3hO1XTE2CmPbmk9GeczS5zpy7mgQkVRkVexNG29Gymw8LeLxsnyczTg2X_wMBZ290vw/&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;The code for generating the table&lt;/p&gt;



&lt;!--HTML generated using hilite.me--&gt;&lt;div style=&quot;background: rgb(255, 255, 255); border-color: gray; border-image: initial; border-style: solid; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;&lt;pre style=&quot;line-height: 125%; margin: 0px;&quot;&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\documentclass&lt;/span&gt;&lt;span style=&quot;color: #0000cc;&quot;&gt;[table]&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;article&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\usepackage&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;highlight&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;

&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\begin&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;document&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;

&lt;span style=&quot;color: #888888;&quot;&gt;% For a 2 color palette&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;% \gradientcell{cell_val}{min_val}{max_val}{colorlow}{colorhigh}{opacity} &lt;/span&gt;

&lt;span style=&quot;color: #888888;&quot;&gt;% For a 3 color/divergent palette&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;% \gradientcelld{cell_val}{min_val}{mid_val}{max_val}{colorlow}{colormid}{colorhigh}{opacity}&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;line-height: 125%; margin: 0px;&quot;&gt;&lt;span style=&quot;color: #888888;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;line-height: 125%; margin: 0px;&quot;&gt;&lt;span style=&quot;color: #888888;&quot;&gt;% Configure a shorthand macro&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style=&quot;line-height: 125%; margin: 0px;&quot;&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\newcommand&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;[1]&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\gradientcelld&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#1&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;-3&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;0&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;3&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;red&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;white&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;green&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;70&lt;span style=&quot;color: #007020;&quot;&gt;}}&lt;/span&gt;

&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\begin&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;tabular&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;l|ccccc&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;background-color: #fff0f0;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #996633;&quot;&gt;\sigma&lt;/span&gt;&lt;span style=&quot;background-color: #fff0f0;&quot;&gt;$&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt;  40  &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt;   80  &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; 100  &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt;   200 &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt;  800 &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\\&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\hline&lt;/span&gt;
0  &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.87&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.84&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 1.04&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 1.34&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-4.30&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\\&lt;/span&gt;
5  &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.38&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.22&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.33&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.58&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-2.18&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\\&lt;/span&gt;
10 &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.29&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.04&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.11&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.48&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.67&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\\&lt;/span&gt;
25 &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.05&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.34&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.39&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.48&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.53&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\\&lt;/span&gt;
50 &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.04&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.18&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.13&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;-0.08&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #007020;&quot;&gt;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\g&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt; 0.11&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\\&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\end&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;tabular&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;

&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\end&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;document&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;




&lt;p&gt;The package &lt;span style=&quot;font-family: courier;&quot;&gt;&lt;b&gt;&lt;a href=&quot;https://www.overleaf.com/read/gqxsqrnxrpzx&quot;&gt;highlight.sty&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&amp;nbsp; implement these commands&amp;nbsp;&amp;nbsp;&lt;/p&gt;


&lt;!--HTML generated using hilite.me--&gt;&lt;div style=&quot;background: rgb(255, 255, 255); border-color: gray; border-image: initial; border-style: solid; border-width: 0.1em 0.1em 0.1em 0.8em; border: solid gray; overflow: auto; padding: 0.2em 0.6em; width: auto;&quot;&gt;&lt;pre style=&quot;line-height: 125%; margin: 0px;&quot;&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%% Siavoosh Payandeh Azad Jan. 2019&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;%% modified by Gabriele Facciolo Sep. 2021&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\ProvidesPackage&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;highlight&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;[Cell background highlighting based on user data]
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\RequirePackage&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;etoolbox&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\RequirePackage&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;pgf&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #888888;&quot;&gt;% for calculating the values for gradient&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\RequirePackage&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;xcolor&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #888888;&quot;&gt;% enables the use of cellcolor make sure you have [table] option in the document class &lt;/span&gt;

&lt;span style=&quot;color: #888888;&quot;&gt;%======================================&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;% For a 2 color palette&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;% \gradientcell{cell_val}{min_val}{max_val}{colorlow}{colorhigh}{opacity} &lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\newcommand&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\gradientcell&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;[6]&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;
    &lt;span style=&quot;color: #888888;&quot;&gt;% The values are calculated linearly between \midval and \maxval&lt;/span&gt;
    &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\ifdimcomp&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#1pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&amp;gt;&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;#3 pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\cellcolor&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#5!100.0!#4!#6&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;#1&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;
    &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\ifdimcomp&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#1pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&amp;lt;&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;#2 pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\cellcolor&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#5!0.0!#4!#6&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;#1&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;
         &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\pgfmathparse&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;int(round(100*(#1/(#3-#2))-(#2 *(100/(#3-#2)))))&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
        &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\tempa&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\pgfmathresult&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
        &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\cellcolor&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#5!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\tempa&lt;/span&gt;!#4!#6&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;#1
    &lt;span style=&quot;color: #007020;&quot;&gt;}}&lt;/span&gt;
 &lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;&lt;pre style=&quot;color: black; line-height: 16.25px; margin-bottom: 0px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%======================================&lt;/span&gt;
&lt;/pre&gt;&lt;pre style=&quot;line-height: 125%; margin: 0px;&quot;&gt;&lt;span style=&quot;color: #888888;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;%======================================&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;% For a 3 color/divergent palette&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;% \gradientcelld{cell_val}{min_val}{mid_val}{max_val}{colorlow}{colormid}{colorhigh}{opacity} &lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\newcommand&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\gradientcelld&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;[8]&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\lowvalx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#2&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\midvalx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#3&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\maxvalx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#4&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\lowcolx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#5&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\midcolx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#6&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\highcolx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#7&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\opacityx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#8&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;% The values are calculated linearly between \midval and \maxval&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\ifdimcomp&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#1pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&amp;gt;&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\maxvalx&lt;/span&gt; pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\cellcolor&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\highcolx&lt;/span&gt;!100.0!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midcolx&lt;/span&gt;!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\opacityx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;#1&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\ifdimcomp&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#1pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&amp;lt;&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midvalx&lt;/span&gt; pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\ifdimcomp&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;#1pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&amp;lt;&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\lowvalx&lt;/span&gt; pt&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\cellcolor&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midcolx&lt;/span&gt;!0.0!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\lowcolx&lt;/span&gt;!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\opacityx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;#1&lt;span style=&quot;color: #007020;&quot;&gt;}{&lt;/span&gt;
     &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\pgfmathparse&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;int(round(100*(#1/(&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midvalx&lt;/span&gt;-&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\lowvalx&lt;/span&gt;))-(&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\lowvalx*&lt;/span&gt;(100/(&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midvalx&lt;/span&gt;-&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\lowvalx&lt;/span&gt;)))))&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
    &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\tempa&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\pgfmathresult&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
    &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\cellcolor&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midcolx&lt;/span&gt;!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\tempa&lt;/span&gt;!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\lowcolx&lt;/span&gt;!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\opacityx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;#1&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #007020;&quot;&gt;}}{&lt;/span&gt;
     &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\pgfmathparse&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;int(round(100*(#1/(&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\maxvalx&lt;/span&gt;-&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midvalx&lt;/span&gt;))-(&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midvalx*&lt;/span&gt;(100/(&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\maxvalx&lt;/span&gt;-&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midvalx&lt;/span&gt;)))))&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
    &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\xdef\tempb&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\pgfmathresult&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
    &lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\cellcolor&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;{&lt;/span&gt;&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\highcolx&lt;/span&gt;!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\tempb&lt;/span&gt;!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\midcolx&lt;/span&gt;!&lt;span style=&quot;color: #008800; font-weight: bold;&quot;&gt;\opacityx&lt;/span&gt;&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;#1&lt;span style=&quot;color: #888888;&quot;&gt;%&lt;/span&gt;
&lt;span style=&quot;color: #007020;&quot;&gt;}}&lt;/span&gt;
&lt;span style=&quot;color: #007020;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #888888;&quot;&gt;&lt;pre style=&quot;color: black; line-height: 16.25px; margin-bottom: 0px; margin-top: 0px;&quot;&gt;&lt;span style=&quot;color: #888888;&quot;&gt;%======================================&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;









</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/7168568170606274060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2021/09/conditional-formatting-coloring-latex.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/7168568170606274060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/7168568170606274060'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2021/09/conditional-formatting-coloring-latex.html' title='Conditional formatting LaTeX tables depending on cell values'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxt3rLbFExkMcqdzScVqZJwyBuGpqxDhMsnlwAeBQMAspfiaG-CpDGSHl4zAVZbk1EsEVBoqnZ3hO1XTE2CmPbmk9GeczS5zpy7mgQkVRkVexNG29Gymw8LeLxsnyczTg2X_wMBZ290vw/s72-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-3234588609159244891</id><published>2021-05-25T23:02:00.000-07:00</published><updated>2021-05-25T23:02:18.630-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="network"/><category scheme="http://www.blogger.com/atom/ns#" term="web"/><title type='text'>Blockchain explained</title><content type='html'>&lt;p&gt;The clearest explanation&amp;nbsp;of blockchain I&#39;ve seen, from &lt;a href=&quot;https://www.youtube.com/channel/UCx7YSpyYtgaYik1Wen9jYSA&quot; target=&quot;_blank&quot;&gt;Anders Brownworth&lt;/a&gt;&amp;nbsp;and it comes &lt;a href=&quot;https://andersbrownworth.com/blockchain/&quot; target=&quot;_blank&quot;&gt;with an online demo.&lt;/a&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;iframe allowfullscreen=&quot;&quot; class=&quot;BLOG_video_class&quot; height=&quot;266&quot; src=&quot;https://www.youtube.com/embed/_160oMzblY8&quot; width=&quot;447&quot; youtube-src-id=&quot;_160oMzblY8&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;iframe allowfullscreen=&quot;&quot; class=&quot;BLOG_video_class&quot; height=&quot;266&quot; src=&quot;https://www.youtube.com/embed/xIDL_akeras&quot; width=&quot;444&quot; youtube-src-id=&quot;xIDL_akeras&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/3234588609159244891/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2021/05/blockchain-explained.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/3234588609159244891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/3234588609159244891'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2021/05/blockchain-explained.html' title='Blockchain explained'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/_160oMzblY8/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-6369542727606015195</id><published>2021-02-12T04:51:00.005-08:00</published><updated>2021-02-12T04:52:12.411-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="internet"/><category scheme="http://www.blogger.com/atom/ns#" term="network"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="system"/><title type='text'>nettop: monitor the per-process bandwidth usage in OSX</title><content type='html'>&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;This command will display the network usage of all the running processes&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;&amp;nbsp; &amp;nbsp;nettop -P -k state,interface -d -s 3&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;strong style=&quot;border: 0px; box-sizing: inherit; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Flags explained:&lt;/strong&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace, sans-serif; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-s&lt;/code&gt;&amp;nbsp;refreshes every 3 seconds&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace, sans-serif; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-P&lt;/code&gt;&amp;nbsp;collapses the rows of each parent process&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace, sans-serif; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-k state,interface&lt;/code&gt;&amp;nbsp;removes less informative columns that stand between you and the bytes in/out columns&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing); margin-left: 0px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace, sans-serif; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-d&lt;/code&gt;&amp;nbsp;activates the delta option (same as pressing the&amp;nbsp;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace, sans-serif; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;d&lt;/code&gt;&amp;nbsp;button)&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Use the&amp;nbsp;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace, sans-serif; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;h&lt;/code&gt;&amp;nbsp;button or run&amp;nbsp;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace, sans-serif; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;man nettop&lt;/code&gt;&amp;nbsp;for some more options.&lt;/p&gt;&lt;p style=&quot;background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-size: 15px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;source: https://apple.stackexchange.com/questions/16690/how-can-i-see-what-bandwidth-each-app-or-process-is-using&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/6369542727606015195/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2021/02/nettop-monitor-per-process-bandwidth.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/6369542727606015195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/6369542727606015195'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2021/02/nettop-monitor-per-process-bandwidth.html' title='nettop: monitor the per-process bandwidth usage in OSX'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-8764034208362178548</id><published>2021-02-12T02:47:00.002-08:00</published><updated>2023-04-28T06:33:20.349-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="latex"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="unix"/><title type='text'>reduce the size of a pdf file compressing its figures</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmmMmLF2u_ASMEGqdEWsK0goF5MFEm1jzYohJhzRvTyqFFUcl6Qg4qROYKxk4-hDGJRESNY8HfMGOkzNJObbiV7YbagiKN94_nrstRUn1GL9zwpSDWOqKO-ndiOblk2lSoTHmPlvUILhKVKqsC0TgQyHEJ4A6416CkOT9Xksbq46_u9oOj_nTy_7h7/s128/pdf.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;128&quot; data-original-width=&quot;118&quot; height=&quot;128&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmmMmLF2u_ASMEGqdEWsK0goF5MFEm1jzYohJhzRvTyqFFUcl6Qg4qROYKxk4-hDGJRESNY8HfMGOkzNJObbiV7YbagiKN94_nrstRUn1GL9zwpSDWOqKO-ndiOblk2lSoTHmPlvUILhKVKqsC0TgQyHEJ4A6416CkOT9Xksbq46_u9oOj_nTy_7h7/s1600/pdf.jpg&quot; width=&quot;118&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;To reduce the size of a PDF file in linux of mac you&#39;ll need&amp;nbsp;ghostscript (which in mac can be installed&amp;nbsp; with: &lt;span style=&quot;font-family: courier;&quot;&gt;brew install&amp;nbsp;ghostscript&lt;/span&gt;). The following command line will generate a smaller file:&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-family: courier;&quot;&gt;gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen \&lt;br /&gt;&amp;nbsp; &amp;nbsp;-dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf&amp;nbsp; &amp;nbsp;input.pdf&lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;border: 0px; box-sizing: inherit; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; list-style-image: initial; list-style-position: initial; margin-bottom: var(--s-prose-spacing); margin-left: 30px; margin-right: 0px; margin-top: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Different levels of compression can be obtained changing the option -dPDFSETTINGS:&lt;br /&gt;&lt;li style=&quot;background-color: white; border: 0px; box-sizing: inherit; color: #242729; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing-condensed); margin-left: 0px; margin-right: 0px; margin-top: 0px; overflow-wrap: break-word; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-dPDFSETTINGS=/screen&lt;/code&gt;&amp;nbsp;lower quality, smaller size. (&lt;strong style=&quot;border: 0px; box-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;72 dpi&lt;/strong&gt;)&lt;/span&gt;&lt;/li&gt;&lt;li style=&quot;background-color: white; border: 0px; box-sizing: inherit; color: #242729; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing-condensed); margin-left: 0px; margin-right: 0px; margin-top: 0px; overflow-wrap: break-word; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-dPDFSETTINGS=/ebook&lt;/code&gt;&amp;nbsp;for better quality, but slightly larger pdfs. (&lt;strong style=&quot;border: 0px; box-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;150 dpi&lt;/strong&gt;)&lt;/span&gt;&lt;/li&gt;&lt;li style=&quot;background-color: white; border: 0px; box-sizing: inherit; color: #242729; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing-condensed); margin-left: 0px; margin-right: 0px; margin-top: 0px; overflow-wrap: break-word; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-dPDFSETTINGS=/prepress&lt;/code&gt;&amp;nbsp;output similar to Acrobat Distiller &quot;Prepress Optimized&quot; setting (&lt;strong style=&quot;border: 0px; box-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;300 dpi&lt;/strong&gt;)&lt;/span&gt;&lt;/li&gt;&lt;li style=&quot;background-color: white; border: 0px; box-sizing: inherit; color: #242729; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin-bottom: var(--s-prose-spacing-condensed); margin-left: 0px; margin-right: 0px; margin-top: 0px; overflow-wrap: break-word; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-dPDFSETTINGS=/printer&lt;/code&gt;&amp;nbsp;selects output similar to the Acrobat Distiller &quot;Print Optimized&quot; setting (&lt;strong style=&quot;border: 0px; box-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;300 dpi&lt;/strong&gt;)&lt;/span&gt;&lt;/li&gt;&lt;li style=&quot;background-color: white; border: 0px; box-sizing: inherit; color: #242729; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; overflow-wrap: break-word; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;code style=&quot;background-color: var(--black-075); border-radius: 3px; border: 0px; box-sizing: inherit; color: var(--black-800); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline; white-space: pre-wrap;&quot;&gt;-dPDFSETTINGS=/default&lt;/code&gt;&amp;nbsp;selects output intended to be useful across a wide variety of uses, possibly at the expense of a larger output file&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;source: https://askubuntu.com/questions/113544/how-can-i-reduce-the-file-size-of-a-scanned-pdf-file&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/8764034208362178548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2021/02/reduce-size-of-pdf-file-compressing-its.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/8764034208362178548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/8764034208362178548'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2021/02/reduce-size-of-pdf-file-compressing-its.html' title='reduce the size of a pdf file compressing its figures'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmmMmLF2u_ASMEGqdEWsK0goF5MFEm1jzYohJhzRvTyqFFUcl6Qg4qROYKxk4-hDGJRESNY8HfMGOkzNJObbiV7YbagiKN94_nrstRUn1GL9zwpSDWOqKO-ndiOblk2lSoTHmPlvUILhKVKqsC0TgQyHEJ4A6416CkOT9Xksbq46_u9oOj_nTy_7h7/s72-c/pdf.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-2709836821271085520</id><published>2019-03-03T13:09:00.005-08:00</published><updated>2019-03-03T17:51:35.447-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="docker"/><category scheme="http://www.blogger.com/atom/ns#" term="gpu"/><category scheme="http://www.blogger.com/atom/ns#" term="python"/><category scheme="http://www.blogger.com/atom/ns#" term="virtualization"/><title type='text'>Run a dockerized jupyter notebook (with GPU)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Launch the docker container (running a jupyter notebook with unprivileged an user).&lt;br /&gt;
&lt;div&gt;
This command maps the port 8888 of the container to the port 9999 of the host, mounts the directory&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;/home/foo/docker &lt;/span&gt;to &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;/home/foo &lt;/span&gt;in the container&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;blockquote class=&quot;tr_bq&quot; style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;$ docker run --rm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;-p 9999:8888&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;\&lt;br /&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-v /home/foo/docker:/home/foo&amp;nbsp; &amp;nbsp;\&lt;br /&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-it jupyter/tensorflow-notebook \&lt;br /&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;jupyter notebook --port=8888&lt;/span&gt;&lt;/blockquote&gt;
Using the &lt;a href=&quot;https://linuxtoosx.blogspot.com/2019/03/docker-containers-with-nvidia-gpus.html&quot;&gt;&lt;span id=&quot;goog_1142057286&quot;&gt;&lt;/span&gt;nvidia-docker&amp;nbsp;driver&lt;span id=&quot;goog_1142057287&quot;&gt;&lt;/span&gt;&lt;/a&gt; it is possible to assign a GPU to the container:&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot; style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;$&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;NV_GPU=1 nvidia-docker run --rm -p 9999:8888&lt;/span&gt;&amp;nbsp;\&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-v /home/foo/docker:/home/foo&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;\&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-it jupyter/tensorflow-notebook&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;\&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;jupyter notebook --port=8888&lt;/span&gt;&lt;/blockquote&gt;
&lt;br /&gt;
To connect as root to a live container for maintenance use the command below.&amp;nbsp;Suppose that the running container ID (from &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;docker ps&lt;/span&gt;) is&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;4f177e045de6&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;,&amp;nbsp; then call&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt; docker exec -ti 4f177e045de6 --user=root bash&lt;/span&gt;&lt;/blockquote&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/2709836821271085520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2019/03/run-dockerized-jupyter-notebook-with-gpu.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/2709836821271085520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/2709836821271085520'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2019/03/run-dockerized-jupyter-notebook-with-gpu.html' title='Run a dockerized jupyter notebook (with GPU)'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-4522037641439728871</id><published>2019-03-03T12:16:00.003-08:00</published><updated>2019-03-03T12:19:38.993-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="docker"/><category scheme="http://www.blogger.com/atom/ns#" term="gpu"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="NN"/><category scheme="http://www.blogger.com/atom/ns#" term="virtualization"/><title type='text'>Docker containers with NVIDIA GPUs using nvidia-docker</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;div style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;
&lt;img alt=&quot;nvidia-gpu-docker&quot; height=&quot;141&quot; src=&quot;https://cloud.githubusercontent.com/assets/3028125/12213714/5b208976-b632-11e5-8406-38d379ec46aa.png&quot; width=&quot;200&quot; /&gt;&lt;/div&gt;
&lt;br /&gt;
These are the installation instructions for Ubuntu:&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Follow the docker-ce installation from (removing docker.io):&lt;br /&gt;&lt;a href=&quot;https://docs.docker.com/install/linux/docker-ce/ubuntu#install-using-the-repository&quot;&gt;https://docs.docker.com/install/linux/docker-ce/ubuntu&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Install nvidia-docker:&lt;br /&gt;&lt;a href=&quot;https://github.com/NVIDIA/nvidia-docker#quickstart&quot;&gt;https://github.com/NVIDIA/nvidia-docker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
Test the installation running&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;$ docker run --runtime=nvidia --rm nvidia/cuda:latest nvidia-smi&lt;/span&gt;&lt;/blockquote&gt;
&amp;nbsp;or the equivalent &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;nvidia-docker&lt;/span&gt; wrapper call&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;$ nvidia-docker run --rm nvidia/cuda:latest nvidia-smi&lt;/span&gt;&lt;/blockquote&gt;
&lt;br /&gt;The wrapper allows to easily select which of the host&#39;s GPUs are visible from the docker instance, in this example only the first two GPUs&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;$ NV_GPU=0,1 nvidia-docker run --rm -v /home/foo/data:/data -it nvidia/cuda:latest bash&lt;/span&gt;&lt;/blockquote&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/4522037641439728871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2019/03/docker-containers-with-nvidia-gpus.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/4522037641439728871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/4522037641439728871'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2019/03/docker-containers-with-nvidia-gpus.html' title='Docker containers with NVIDIA GPUs using nvidia-docker'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-1287560908123051728</id><published>2019-02-23T09:45:00.002-08:00</published><updated>2019-03-24T11:48:57.764-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="image"/><category scheme="http://www.blogger.com/atom/ns#" term="internet"/><category scheme="http://www.blogger.com/atom/ns#" term="javascript"/><category scheme="http://www.blogger.com/atom/ns#" term="latex"/><category scheme="http://www.blogger.com/atom/ns#" term="NN"/><category scheme="http://www.blogger.com/atom/ns#" term="python"/><category scheme="http://www.blogger.com/atom/ns#" term="UI"/><category scheme="http://www.blogger.com/atom/ns#" term="web"/><title type='text'>Latex code and other tools for making neural networks diagrams</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;div style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;
&amp;nbsp;&lt;a href=&quot;https://github.com/HarisIqbal88/PlotNeuralNet&quot;&gt;PlotNeuralNet&lt;/a&gt; generates tikz code (for Latex) for illustrating a network architectures&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://user-images.githubusercontent.com/17570785/50308846-c2231880-049c-11e9-8763-3daa1024de78.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;113&quot; src=&quot;https://user-images.githubusercontent.com/17570785/50308846-c2231880-049c-11e9-8763-3daa1024de78.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;a href=&quot;http://alexlenail.me/NN-SVG/LeNet.html&quot;&gt;NN-SVG&lt;/a&gt;&amp;nbsp;is an online tool for illustrating simple architectures and that generates SVG code&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiS71FxSieEWIdCVUs-m85eKn0b1Q61Eyb-7zMUSA8krCeZoIaz6dYtdo6wKYwktWA8v5dW39vwc9jFCDVQu5cAtbgd0hAnepIAKSMER3D8d1sBXqPH3yWJWJE7j3K8YubDjG5AJiUZPzM/s1600/svd-nn.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;328&quot; data-original-width=&quot;942&quot; height=&quot;111&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiS71FxSieEWIdCVUs-m85eKn0b1Q61Eyb-7zMUSA8krCeZoIaz6dYtdo6wKYwktWA8v5dW39vwc9jFCDVQu5cAtbgd0hAnepIAKSMER3D8d1sBXqPH3yWJWJE7j3K8YubDjG5AJiUZPzM/s320/svd-nn.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;a href=&quot;https://tensorspace.org/html/docs/startHello.html&quot;&gt;Tensorspace.js&lt;/a&gt;&amp;nbsp;is a web-based tool that takes keras network definitions and produces beautiful 3D representations on the browser &lt;b&gt;that are also functional!&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://tensorspace.org/assets/img/docs/HelloWorld_5.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;170&quot; src=&quot;https://tensorspace.org/assets/img/docs/HelloWorld_5.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;a href=&quot;http://ethereon.github.io/netscope/quickstart.html&quot;&gt;Netscope&lt;/a&gt; is a web-based tool for visualizing neural network architectures for the moment only supports Caffe&#39;s prototxt format&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsK2StwFZZbYDk_b7rLVNYhAf-zTmsB7cpFPTfDKRopv_JrUvoWmhlvmOcFXYis7f3lIh6CEh-8KYGxx-W2gjAM1bVqTAxXynXCapQZvTHVbsCoeACwfB1zenSqmBW1pTW8RhFi-kk3Gc/s1600/Untitled+2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1216&quot; data-original-width=&quot;1068&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsK2StwFZZbYDk_b7rLVNYhAf-zTmsB7cpFPTfDKRopv_JrUvoWmhlvmOcFXYis7f3lIh6CEh-8KYGxx-W2gjAM1bVqTAxXynXCapQZvTHVbsCoeACwfB1zenSqmBW1pTW8RhFi-kk3Gc/s320/Untitled+2.png&quot; width=&quot;281&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Have a look at the stackexchange thread about this topic: &lt;a href=&quot;https://datascience.stackexchange.com/questions/12851/how-do-you-visualize-neural-network-architectures&quot;&gt;https://datascience.stackexchange.com/questions/12851/how-do-you-visualize-neural-network-architectures&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
Sources:&lt;/div&gt;
&lt;a href=&quot;https://github.com/HarisIqbal88/PlotNeuralNet&quot;&gt;https://github.com/HarisIqbal88/PlotNeuralNet&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://alexlenail.me/NN-SVG/LeNet.html&quot;&gt;http://alexlenail.me/NN-SVG/LeNet.html&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://tensorspace.org/html/docs/startHello.html&quot;&gt;https://tensorspace.org/html/docs/startHello.html&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://ethereon.github.io/netscope/quickstart.html&quot;&gt;http://ethereon.github.io/netscope/quickstart.html&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.draw.io/&quot;&gt;https://www.draw.io/&lt;/a&gt;&amp;nbsp;(for manual drawing from elementary shapes)&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/1287560908123051728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2019/02/latex-code-for-making-neural-networks.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/1287560908123051728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/1287560908123051728'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2019/02/latex-code-for-making-neural-networks.html' title='Latex code and other tools for making neural networks diagrams'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiS71FxSieEWIdCVUs-m85eKn0b1Q61Eyb-7zMUSA8krCeZoIaz6dYtdo6wKYwktWA8v5dW39vwc9jFCDVQu5cAtbgd0hAnepIAKSMER3D8d1sBXqPH3yWJWJE7j3K8YubDjG5AJiUZPzM/s72-c/svd-nn.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-6508556878750245357</id><published>2018-01-14T09:25:00.001-08:00</published><updated>2026-05-16T06:25:51.114-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="javascript"/><category scheme="http://www.blogger.com/atom/ns#" term="ray marching"/><title type='text'>Ray Marching and Signed Distance Functions</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
This is generated by intersecting rays with a signed distance function!&lt;br /&gt;
Here&#39;s an excellent explanation of how it works:&amp;nbsp;&lt;a href=&quot;http://jamie-wong.com/2016/07/15/ray-marching-signed-distance-functions/&quot;&gt;http://jamie-wong.com/2016/07/15/ray-marching-signed-distance-functions/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Here&#39;s a page from the creator of this model with more examples:&amp;nbsp;&lt;a href=&quot;http://www.iquilezles.org/www/articles/raymarchingdf/raymarchingdf.htm&quot; style=&quot;font-family: times;&quot;&gt;http://www.iquilezles.org/www/articles/raymarchingdf/raymarchingdf.htm&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;-webkit-text-stroke-width: 0px; color: black; font-family: Times; font-size: medium; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; margin: 0px; orphans: 2; text-align: left; text-decoration-color: initial; text-decoration-style: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
  
  &lt;a href=&quot;https://www.shadertoy.com/view/MsXGWr&quot; target=&quot;_blank&quot;&gt;See an example here&lt;/a&gt;
&lt;!-- &lt;iframe src=&quot;https://www.shadertoy.com/embed/MsXGWr&quot; style=&quot;height: 280px; width: 500px;&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;--&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/6508556878750245357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2018/01/ray-marching-and-signed-distance.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/6508556878750245357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/6508556878750245357'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2018/01/ray-marching-and-signed-distance.html' title='Ray Marching and Signed Distance Functions'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-2364630973816153834</id><published>2017-04-19T23:02:00.001-07:00</published><updated>2017-04-19T23:02:54.608-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="latex"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="productivity"/><title type='text'>Stop TeXShop memory leak </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://www.macupdate.com/images/icons256/12104.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;100&quot; src=&quot;https://www.macupdate.com/images/icons256/12104.png&quot; width=&quot;100&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Long TeXShop writing sessions (several weeks in my case) reveal that TeXShop leaks memory. I ended up with a 5Gb process without any open file!&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;This seems to be an &lt;a href=&quot;https://tex.stackexchange.com/questions/296835/texshop-memory-leak-every-texing-increases-memory-usage&quot;&gt;old incomprehensible issue&lt;/a&gt;&amp;nbsp;but it has a simple solution, just run the following line in your terminal&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 26.0px &#39;Helvetica Neue&#39;}
&lt;/style&gt;


&lt;/div&gt;
&lt;div class=&quot;p1&quot; style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace; font-size: x-small;&quot;&gt;&amp;nbsp; &amp;nbsp;defaults write TeXShop ReleaseDocumentClasses 0&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot; style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif; font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot; style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif; font-size: small;&quot;&gt;If you want to check the status of the variable before changing it:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif; font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif; font-size: small;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace; font-size: x-small;&quot;&gt;&amp;nbsp; &amp;nbsp;defaults read TeXShop ReleaseDocumentClasses&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif; font-size: small;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif; font-size: small;&quot;&gt;Source: &lt;a href=&quot;https://www.blogger.com/goog_891507463&quot;&gt;ht&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;times&amp;quot; , &amp;quot;times new roman&amp;quot; , serif; font-size: small;&quot;&gt;&lt;a href=&quot;tps://sourceforge.net/p/texshop/bugs/87/?SetFreedomCookie&quot;&gt;tps://sourceforge.net/p/texshop/bugs/87/?SetFreedomCookie&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/2364630973816153834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2017/04/stop-texshop-memory-leak.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/2364630973816153834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/2364630973816153834'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2017/04/stop-texshop-memory-leak.html' title='Stop TeXShop memory leak '/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-8884352735604376444</id><published>2017-03-12T08:14:00.000-07:00</published><updated>2017-03-12T08:16:58.633-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="el capitan"/><category scheme="http://www.blogger.com/atom/ns#" term="general"/><category scheme="http://www.blogger.com/atom/ns#" term="latex"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="productivity"/><category scheme="http://www.blogger.com/atom/ns#" term="svg"/><title type='text'>Fixing textext 0.4.4 in Inkscape 0.91 with OSX </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFCwLjIx-SpLW0AjdPlYuWraaUsL3Dpb3rjpcHo3tkRUhuCpfrK8KLsSgIncKyxvicE5_Rfj5wgoZE4JF2wQux7P9mcupqs4ZDmqukhZczi_JnXNPZ2NlEEmUQEGfQwAxtI3nqFv7aeug/s1600/2a05a13c.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFCwLjIx-SpLW0AjdPlYuWraaUsL3Dpb3rjpcHo3tkRUhuCpfrK8KLsSgIncKyxvicE5_Rfj5wgoZE4JF2wQux7P9mcupqs4ZDmqukhZczi_JnXNPZ2NlEEmUQEGfQwAxtI3nqFv7aeug/s1600/2a05a13c.png&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;https://pav.iki.fi/software/textext/&quot;&gt;textext&lt;/a&gt; is a great Inkscape extension that allows to &lt;a href=&quot;http://linuxtoosx.blogspot.fr/2010/04/latex-formulas-for-inkscape-openoffice.html&quot;&gt;incrustante LaTeX formulas in the drawings&lt;/a&gt;. However, it seems that textext was last updated in 2010 (v0.4.4) and since then some python calls to the &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;md5&lt;/span&gt; package have become deprecated. &lt;br /&gt;
This is obviously an issue for recent OS.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;The&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;md5&lt;/span&gt;&amp;nbsp;error is fixed by changing said package with &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;hashlib&lt;/span&gt;&amp;nbsp;&lt;a href=&quot;https://www.blogger.com/goog_1763514038&quot;&gt;as indicated in this post:&amp;nbsp;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://laconsigna.wordpress.com/2010/11/13/fixing-textext-on-inkscape-0-48/&quot;&gt;https://laconsigna.wordpress.com/2010/11/13/fixing-textext-on-inkscape-0-48&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;
&lt;li&gt;But there is also an issue (reported below) related to the location of pdflatex. In my system MacTeX left it in &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;/Library/TeX/texbin/pdflatex&lt;/span&gt;, but Inkscape wasn&#39;t able to find it there. So the solution was to create a symbolic link in &lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;/urs/local/bin&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaj1w5BnytIn0ZvH-ZIqxzpKTwI2llkqTZ2jdyMvLl3SHl0Vf4GS8v9ouu3dea7RW0Nd0R-p-QTWdA3HkWpuEvUiDN5XHsTaGN7dk9veyoJ8bzXApjVSSOfCc-S3Jcj7lvwXI3kMMUN5U/s1600/textext.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;175&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaj1w5BnytIn0ZvH-ZIqxzpKTwI2llkqTZ2jdyMvLl3SHl0Vf4GS8v9ouu3dea7RW0Nd0R-p-QTWdA3HkWpuEvUiDN5XHsTaGN7dk9veyoJ8bzXApjVSSOfCc-S3Jcj7lvwXI3kMMUN5U/s200/textext.png&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;Traceback (most recent call last):&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; File &quot;textext.py&quot;, line 210, in cb_ok&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; &amp;nbsp; self.callback(self.text, self.preamble_file, self.scale_factor)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; File &quot;textext.py&quot;, line 369, in &lt;lambda&gt;&lt;/lambda&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; &amp;nbsp; converter_cls, old_node))&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; File &quot;textext.py&quot;, line 387, in do_convert&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; &amp;nbsp; new_node = converter.convert(text, preamble_file, scale_factor)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; File &quot;textext.py&quot;, line 879, in convert&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; &amp;nbsp; return PdfConverterBase.convert(self, *a, **kw)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; File &quot;textext.py&quot;, line 750, in convert&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; &amp;nbsp; self.tex_to_pdf(latex_text, preamble_file)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; File &quot;textext.py&quot;, line 727, in tex_to_pdf&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; &amp;nbsp; exec_command([&#39;pdflatex&#39;, self.tmp(&#39;tex&#39;)] + latexOpts)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; File &quot;textext.py&quot;, line 592, in exec_command&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&amp;nbsp; &amp;nbsp; raise RuntimeError(&quot;Command %s failed: %s&quot; % (&#39; &#39;.join(cmd), e))&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: xx-small;&quot;&gt;&lt;b&gt;RuntimeError: Command pdflatex &lt;/b&gt;/var/folders/2y/h0000gn/T/tmpUcu75l/tmp.tex -interaction=nonstopmode -halt-on-error failed: [Errno 2] &lt;b&gt;No such file or directory&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/8884352735604376444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2017/03/fixing-textext-044-in-inkscape-091-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/8884352735604376444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/8884352735604376444'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2017/03/fixing-textext-044-in-inkscape-091-with.html' title='Fixing textext 0.4.4 in Inkscape 0.91 with OSX '/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFCwLjIx-SpLW0AjdPlYuWraaUsL3Dpb3rjpcHo3tkRUhuCpfrK8KLsSgIncKyxvicE5_Rfj5wgoZE4JF2wQux7P9mcupqs4ZDmqukhZczi_JnXNPZ2NlEEmUQEGfQwAxtI3nqFv7aeug/s72-c/2a05a13c.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-3493380109072071560</id><published>2016-07-14T01:26:00.000-07:00</published><updated>2016-07-14T01:36:02.129-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="el capitan"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="soft"/><category scheme="http://www.blogger.com/atom/ns#" term="system"/><title type='text'>Error associating all .ply files to MeshLab in OSX El Capitan</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqNqKt0MHuTxPvWk5jTLjKOrVi0zuJMAoggIVItAlGRO4qYMQincQIu0pmP1s_zuugHUCc1uSWuWOTTE5at5VAJSuuitZBBWkhqquZwKCuVHfVj93JUiZ6L97r0AeZguReuc3R9Lp1v7w/s1600/eye_cropped.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;/a&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjry3xUpdSBLtnvBwDPTt2LScMaofV_tWxn-wKox5-0RYNPp9HYh5q_xT5h4ffRFcoc_t7F8qAay_8U0TpvcNXvx1kOK6jm4k7jeSypqDDO_09vksld3psyfPDEGqsFV8BudgePn8-j1nY/s1600/OS-X-El-Capitan-top-300x344.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjry3xUpdSBLtnvBwDPTt2LScMaofV_tWxn-wKox5-0RYNPp9HYh5q_xT5h4ffRFcoc_t7F8qAay_8U0TpvcNXvx1kOK6jm4k7jeSypqDDO_09vksld3psyfPDEGqsFV8BudgePn8-j1nY/s1600/OS-X-El-Capitan-top-300x344.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqNqKt0MHuTxPvWk5jTLjKOrVi0zuJMAoggIVItAlGRO4qYMQincQIu0pmP1s_zuugHUCc1uSWuWOTTE5at5VAJSuuitZBBWkhqquZwKCuVHfVj93JUiZ6L97r0AeZguReuc3R9Lp1v7w/s1600/eye_cropped.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqNqKt0MHuTxPvWk5jTLjKOrVi0zuJMAoggIVItAlGRO4qYMQincQIu0pmP1s_zuugHUCc1uSWuWOTTE5at5VAJSuuitZBBWkhqquZwKCuVHfVj93JUiZ6L97r0AeZguReuc3R9Lp1v7w/s1600/eye_cropped.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
When trying to associate MeshLab application to all the &lt;b&gt;.ply&lt;/b&gt; files&amp;nbsp;with the &lt;b&gt;Always open with&lt;/b&gt;&amp;nbsp;or &lt;b&gt;Change All...&lt;/b&gt;&amp;nbsp; buttons I get the following error&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;i&gt;An unexpected error occurred (error code -10813).&lt;/i&gt;&lt;/br&gt;&lt;i&gt;The operation could not be completed.&lt;/i&gt;&lt;/blockquote&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjry3xUpdSBLtnvBwDPTt2LScMaofV_tWxn-wKox5-0RYNPp9HYh5q_xT5h4ffRFcoc_t7F8qAay_8U0TpvcNXvx1kOK6jm4k7jeSypqDDO_09vksld3psyfPDEGqsFV8BudgePn8-j1nY/s1600/OS-X-El-Capitan-top-300x344.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;
The problem is that MeshLab is missing the&amp;nbsp;key &lt;b&gt;CFBundleIdentifier&lt;/b&gt; in its &lt;b&gt;Info.plist&lt;/b&gt;.&lt;br /&gt;
&lt;div&gt;
To solve the problem edit its plist file&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: x-small;&quot;&gt;&amp;gt; open /Applications/meshlab.app/Contents/Info.plist&amp;nbsp;&lt;/span&gt;&lt;/blockquote&gt;
&lt;div&gt;
and add the key&amp;nbsp;&lt;b&gt;CFBundleIdentifier&lt;/b&gt; with value&amp;nbsp;&lt;b&gt;com.vcg.MeshLab&lt;/b&gt;.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
Then&amp;nbsp;&lt;b&gt;touch&lt;/b&gt; the application tell OS X about the change&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace; font-size: x-small;&quot;&gt;&amp;gt; touch /Applications/meshlab.app&lt;/span&gt;&lt;/blockquote&gt;
&lt;/div&gt;
&lt;div&gt;
And retry associating the file type.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
Source: &lt;a href=&quot;http://www.blitzbasic.com/Community/posts.php?topic=62309&quot;&gt;http://www.blitzbasic.com/Community/posts.php?topic=62309&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/3493380109072071560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2016/07/error-associating-all-ply-files-to.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/3493380109072071560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/3493380109072071560'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2016/07/error-associating-all-ply-files-to.html' title='Error associating all .ply files to MeshLab in OSX El Capitan'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjry3xUpdSBLtnvBwDPTt2LScMaofV_tWxn-wKox5-0RYNPp9HYh5q_xT5h4ffRFcoc_t7F8qAay_8U0TpvcNXvx1kOK6jm4k7jeSypqDDO_09vksld3psyfPDEGqsFV8BudgePn8-j1nY/s72-c/OS-X-El-Capitan-top-300x344.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-5733978872524489507</id><published>2015-12-07T13:59:00.000-08:00</published><updated>2015-12-07T13:59:04.785-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="general"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="matlab"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="UI"/><category scheme="http://www.blogger.com/atom/ns#" term="windows"/><title type='text'>Hide Matlab  Start Bar / Busy Bar / Status Bar</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Reclaim precious screen space by disappearing the &quot;&lt;i&gt;Start bar&quot;&lt;/i&gt;&amp;nbsp;(in older versions of Matlab) whose main purpose is saying &lt;i&gt;Busy&lt;/i&gt;.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;com.mathworks.mde.desk.MLDesktop.getInstance.getMainFrame.getStatusBar.getParent.setVisible(0);&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWETfpix8TPhXt-OmrsXV3WhyiH3GOWhXv6kwDT9DgiWt9N2MdI5__wv4Ei8li1CFeXy6dvt201Qzetud5dgfDX4usntacp-iKXro12UItJyGxZ0ZnOqqCJwo_DbIhCrleWUBEL2jIh08/s1600/start_bar.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;160&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWETfpix8TPhXt-OmrsXV3WhyiH3GOWhXv6kwDT9DgiWt9N2MdI5__wv4Ei8li1CFeXy6dvt201Qzetud5dgfDX4usntacp-iKXro12UItJyGxZ0ZnOqqCJwo_DbIhCrleWUBEL2jIh08/s400/start_bar.gif&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
Source: &lt;a href=&quot;http://www.mathworks.com/matlabcentral/newsreader/view_thread/152888&quot;&gt;http://www.mathworks.com/matlabcentral/newsreader/view_thread/152888&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/5733978872524489507/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2015/12/hide-matlab-start-bar-busy-bar-status.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/5733978872524489507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/5733978872524489507'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2015/12/hide-matlab-start-bar-busy-bar-status.html' title='Hide Matlab  Start Bar / Busy Bar / Status Bar'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWETfpix8TPhXt-OmrsXV3WhyiH3GOWhXv6kwDT9DgiWt9N2MdI5__wv4Ei8li1CFeXy6dvt201Qzetud5dgfDX4usntacp-iKXro12UItJyGxZ0ZnOqqCJwo_DbIhCrleWUBEL2jIh08/s72-c/start_bar.gif" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3074084601384130606.post-3742978901959805811</id><published>2014-01-12T23:06:00.002-08:00</published><updated>2014-02-28T14:19:48.600-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="general"/><category scheme="http://www.blogger.com/atom/ns#" term="osx"/><category scheme="http://www.blogger.com/atom/ns#" term="system"/><category scheme="http://www.blogger.com/atom/ns#" term="usb"/><title type='text'>SMC reset. Random system freezes, and unresponsive keyboard &amp; touchpad after plugging USB device</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdcb5-ifEMz73DUFf5e-al34IJW9Ac2G2oGJVp-QPhfNzLmJ-jatqge_FLblwEqVUeLfNohAw9vXmVPPaKl7i4I24T0VntxJlSQ3J2zmBcY1-JAkJeDChj_bF2g8RTXAlDJO97hKSpnoU/s1600/sad.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdcb5-ifEMz73DUFf5e-al34IJW9Ac2G2oGJVp-QPhfNzLmJ-jatqge_FLblwEqVUeLfNohAw9vXmVPPaKl7i4I24T0VntxJlSQ3J2zmBcY1-JAkJeDChj_bF2g8RTXAlDJO97hKSpnoU/s1600/sad.jpeg&quot; /&gt;&lt;/a&gt;Lately I had some problems with my macbook air. Random system freezes, and unresponsive keyboard &amp;amp; touchpad&amp;nbsp;after re-opening the lid.&lt;br /&gt;
&lt;br /&gt;
I first tried a memory diagnostic (by booting pressing &#39;D&#39;) to discard a memory fault, but the RAM was OK. After surfing the web I found that I may have been needing to reset the SMC (System Management Controller). So I did, it but in the end the system continued to randomly freeze after plugging some USB devices.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Reset Macbook Air&#39;s SMC&lt;/b&gt;&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Shut down the computer&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Plug in the&amp;nbsp;power adapter&amp;nbsp;if its not already&amp;nbsp;connected.&lt;/li&gt;
&lt;li&gt;On the built-in keyboard, press the (left side) Shift-Control-Option keys and the power button at the same time.&lt;/li&gt;
&lt;li&gt;Release all the keys and the power button at the same time.&lt;/li&gt;
&lt;li&gt;Reboot as usual.&lt;/li&gt;
&lt;/ol&gt;
The procedure for other Mac&#39;s is slightly different, so it&#39;s better to look them up &lt;a href=&quot;https://support.apple.com/kb/HT3964&quot;&gt;here&lt;/a&gt;&amp;nbsp;or &lt;a href=&quot;http://osxdaily.com/2010/03/24/when-and-how-to-reset-your-mac%E2%80%99s-system-management-controller-smc/&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.android.com/filetransfer/icon.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.android.com/filetransfer/icon.png&quot; /&gt;&lt;/a&gt;&lt;b&gt;Solution to unresponsive keyboard &amp;amp; touchpad after plugging USB device&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
In the end the culprit of this behavior was the&amp;nbsp;&lt;a href=&quot;http://www.android.com/filetransfer/&quot;&gt;android file transfer tool&lt;/a&gt;. What solved my issue was to &lt;a href=&quot;http://mtmurdockblog.com/2012/12/17/disable-auto-start-for-android-file-transfer-on-osx/&quot;&gt;disable the autostart&lt;/a&gt;&amp;nbsp;of this application.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;ol style=&quot;-webkit-text-stroke-width: 0px; color: black; font-family: Times; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;&lt;/ol&gt;
&lt;br /&gt;
&lt;div style=&quot;-webkit-text-stroke-width: 0px; color: black; font-family: Times; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; margin: 0px; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://linuxtoosx.blogspot.com/feeds/3742978901959805811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://linuxtoosx.blogspot.com/2014/01/smc-reset-random-system-freezes-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/3742978901959805811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3074084601384130606/posts/default/3742978901959805811'/><link rel='alternate' type='text/html' href='http://linuxtoosx.blogspot.com/2014/01/smc-reset-random-system-freezes-and.html' title='SMC reset. Random system freezes, and unresponsive keyboard &amp; touchpad after plugging USB device'/><author><name>Gabriele Facciolo</name><uri>http://www.blogger.com/profile/00650919505417847912</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdcb5-ifEMz73DUFf5e-al34IJW9Ac2G2oGJVp-QPhfNzLmJ-jatqge_FLblwEqVUeLfNohAw9vXmVPPaKl7i4I24T0VntxJlSQ3J2zmBcY1-JAkJeDChj_bF2g8RTXAlDJO97hKSpnoU/s72-c/sad.jpeg" height="72" width="72"/><thr:total>0</thr:total></entry></feed>