Showing posts with label bugs. Show all posts
Showing posts with label bugs. Show all posts

Monday, January 18, 2021

Looking for MediaAmp, Course Links, or Files in Canvas's "Enhanced" Rich Content Editor (RCE)?

Recently, my university has changed things so that faculty using Canvas LMS will now encounter the “Enhanced Rich Content Editor (RCE)” by default whenever they edit an assignment, announcement, etc. Strangely, this change was made in the middle of the semester, not giving faculty who were unfamiliar with the "Enhanced" RCE a chance to find everything they frequently used in the classical editor. So here's a list of tips (with screenshots) to help you get used to the new editor.

  • ASU uses MediaAmp to host videos for streaming to students. If you’re looking for MediaAmp (to embed videos) in the new RCE, you have to click on the little “Plug-in” icon (looks like a plug) and possibly search for it under “View All.” 
    Plug-in menu showing MediaAmp and View All in Canvas LMS Enhanced RCE
  • If you’re looking for course links (Pages, Assignments, etc.), you have to click on the “Link” Icon (looks like chain links) and then select “Course Links."
    Link menu showing External and Course Links in Canvas LMS Enhanced RCE
  • If you’re looking for your Files, you have to click on the “Link” icon, then select “Course Links”, then in the pop-up “Add” window that comes up on the right, change “Course Links” to “Files."
    Course Links "Add" menu configured for "Files" in Canvas LMS Enhanced RCE


  • Alternatively, some of you might not see the wisdom of changing editors in the middle of a semester like this one. For those of you, you can go to “Settings” and “Feature Options” and then toggle “RCE Enhancements” OFF to get the old editor back (at least for a little while).
    Canvas LMS course settings that disable Enhanced RCE
I hope that's helpful! I wish I could say that the Enhanced RCE is an improvement, but I think you can see how it adds so many extra steps to find things that used to be up front and ready to use in the old editor. Even though it looks a little nicer, it's a net downgrade from the old editor.  And it is still impossible to drag images into the editor to insert them or simply paste them in place. You get no functional benefits out of the editor, and you get a lot of extra drag.

Happy editing, faculty!

Friday, February 10, 2012

Your iPad/iPhone/iPod not showing up on wireless sync on iTunes in Windows XP?

UPDATE: This solution appears to work for Windows 7 as well. As the problem is likely in the Apple software, the solution should work across Windows operating systems.
Last year for my mom's birthday, we bought her an iPad 2. When iOS 5 came out, she took advantage of the cool wireless sync feature to iTunes running on her Windows XP machine. It worked great for a few months, but then suddenly her iPad stopped showing up in the sync list unless it was physically plugged into her computer. On the iPad, it said it couldn't see her computer.

After tweaking some settings and doing a few reboots, I managed to get her computer to start wireless sync'ing again. I had an idea about what it was, but I wasn't sure.

Then, after a few weeks, I hear from her that it has started again. So I did a little more searching, and after combining multiple people's error reports and extracting the common thing that seemed to fix them all, I think I came up with the fix. It's a simple fix, and she's able to do it herself whenever the iPad loses connectivity. For the last few weeks, every time the iPad stops talking to her computer, she's able to recover immediately. So I think we've figured it out.

The fix? Restart the Apple Mobile Device service. Here's how:
  1. Quit iTunes.
  2. Right-click on "My Computer" and go to "Manage".
    • Alternatively (e.g., on Windows 7), open up your "Control Panel". Then click to see "All Items." Then look for "Administrative Tools." You should find "Services" in there. That's the ultimate destination we're heading to.
    • Alternatively, click on "Start" and then "Run" and type "services.msc" (without the quotes) and hit enter.
  3. Click on "Services and Applications" inside the "Computer Management" console.
  4. Double-click on the "Services" that shows up.
  5. Find the "Apple Mobile Device" service in the list and select it by clicking on it.
  6. Click the link that says "Restart the service".
    • Alternatively, you can right-click on the service and select "Restart."
    • Alternatively, you can double-click on the service and then click the "Stop" button and then the "Start" button.
  7. Close the management console.
Now that you've restarted the "Apple Mobile Device", your system should start working like normal again (you may want to start up iTunes again though). Eventually when your iOS device starts looking again, it will find your system and sync as needed.

This problem appears to be caused by some sort of race condition dealing with the Apple Mobile Device and the network. As the computer starts, the order in which things start is non-deterministic. Due to some random delays, the network may not come up quick enough. Consequently, the Apple Mobile Device gets confused by the network being in this state. Re-starting it manually later when the network is definitely up and running seems to fix this problem every time.

Thursday, February 02, 2012

What it means for GMail's web interface to use a different grammar for labeling and searching...

I have been having a hard time explaining this to the Google Apps support team. I originally contacted them because I had a lot of labels with leading special characters that I use to affect their sort order. For example, I have a "?Bulk" label grouped together with other "?Bulk/sublabels" (e.g., "?Bulk/Facebook"). The leading question mark prevents them from showing up in the middle of other labels I have that start with "B". Moreover, using leading special characters lets me put certain important labels at the top of my list where they are easy to see and access.

Now, the search bar at the top of the GMail web interface doesn't have much problem with this. It will match such labels regardless of whether I include the leading special character:



Note that it's not just finding partial matches in the middle of a label. If you drop the first alphanumeric character after the special characters, you get no matches:


Now, you would expect the "Move To" and "Copy To" quick searches to behave the same way. At first, it seems like they do. They'll do partial matches from the front of the label if you include the special character:


But if you drop the special character, you're doomed.


Pretty annoying, huh? See, "Move To" and "Copy To" are using some special grammar to extract information from the list of labels. Apparently this grammar is overly simple. Now, I might be able to live with that if it wasn't the case that GMail Search knows how to get labels right. In fact, Gmail Search can even handle nested labels with leading special characters. Check it out:



See? It was able to recognize that the "/" in big version of the label name separated parent from child label (which actually can be a problem if you're not intending to use nested labels). It then looks for matches at the start of the sublabel, which is in the middle of the big label shown. Pretty cool. Moreover, if you drop the leading alphanumeric character, the match fails:


Now, apparently "Move To" and "Copy To" have some of this matching behavior. That is, they'll properly chop the label into parent and child and look for matches in just the child part:


Unfortunately, you need the special character for the match to work:


So, again, for some reason GMail has developed the quick search for "Move To" and "Copy To" independently from GMail Search in general. Maybe this was an optimization, but it seems like it wouldn't be too slow to call out to GMail Search to find these labels. Then everything would be consistent.

Now, I tried explaining this to the Google Apps support team initially. You know what they told me? That "Gmail Search" doesn't do partial matches, and so it's the expected behavior. Can you believe they actually had the nerve to forward me to a GMail Search page when the real problem is that "Move To" and "Copy To" are in fact acting DIFFERENTLY than GMail Search? IF ONLY the issue was with GMail Search; I could live with that.

Well, Thunderbird gets it right. I guess that's a nice workaround.

Saturday, March 21, 2009

rspublic.cls fixed to get rid of nasty Incomplete \if errors

Depending on how updated your LaTeX distribution is, if you try to use the Royal Society's rspublic.cls to build your compuscript, you may get nasty incomprehensible errors like:
! Incomplete \if; all text was ignored after line 7.

\fi
I didn't get these errors on my home system (which has TeX Live 2007 installed), but I got them on Manuscript Central for Proc. R. Soc. B, and that's a major problem.

After two days of binary searching through possible sources of the problem, I found it. Jonathan Wainwright (the author of the document class) used a \phantom in both the \@oddhead and \@evenhead without preceding it by a \protect. The \phantom macro is fragile, which means that it can cause major problems when put in contexts that move around (like headers). So it needs to be protected.

I added \protect in front of each of the two \phantom calls, and all was well in the world.

I've posted a fixed version of the document class at:Give it a shot. That version also allows for 11pt and 12pt fonts, and it defines \@ptsize, which setspace needs to exist in order to work (i.e., for double spacing).

Thursday, October 16, 2008

Fixing bug in hyperref's autoref: amsmath-type equations under items get "item" label

Earlier this year, in a comp.text.tex posting, I discussed a bug I found in hyperref. That bug was then fixed in hyperref 6.77a, but there are still plenty of old packages hanging around that have this bug (for example, the hyperref from TeXLive 2007 on my system that I still haven't upgraded to TeXLive 2008).

The problem happens when
  • amsmath (or mathtools) is loaded.
  • An equation (or any other type of displayed-math environment) environment with labels occurs INSIDE an enumerated item.
  • You try to use \autoref to generate a reference to one of those equation labels later.
The \autoref macro will not properly return an "Equation" label (e.g., "Equation 1"). Instead, it will return an "item" label (e.g., "item 1").

To fix this problem, I use these lines of code just after I load hyperref in my preamble:
\makeatletter
\newcommand{\AMShreffix}[1]{%
    \expandafter\let\csname old#1\expandafter\endcsname%
        \csname #1\endcsname%
    \expandafter\renewcommand\csname #1\endcsname{%
        \@hyper@itemfalse\csname old#1\endcsname}}
\makeatother
\AMShreffix{equation}
\AMShreffix{align}
\AMShreffix{gather}
The \AMShreffix (i.e., AMS-href-fix) macro "fixes" the displayed-math environment that you pass it. This example fixes equation, align, and gather. If you want to fix alignat too, add a \AMShreffix{alignat} at the end of those lines. Make similar changes for your other displayed-math environments (e.g., flalign and multline too).

That fix changes all of the improper "item" labels back into proper "Equation" labels.

Thursday, September 04, 2008

iTerm AppleScript crashing fix

Lately, my officemate and I noticed that iTerm build 0.9.5.0902 crashes whenever AppleScript tries to talk to it. I was excited about some of the full screen fixes, but I couldn't do without my "Open iTerm Here" context menu item, and so I had to come up with a fix.

In my old scripts, I was doing things like this:
tell application "iTerm"
activate
set theTerm to make new terminal
tell theTerm
set theSession to make new session at the end of sessions
tell theSession to
exec command "/bin/bash -login"
write text "ls"
end tell
end tell
end tell
It appears like it's the make new session that's causing the problem. So I changed the set theSession... and tell theSession... lines to use a launch instead. The result:
tell application "iTerm"
activate
set theTerm to make new terminal
tell theTerm
launch session "Default Session"
tell the last session
exec command "/bin/bash -login"
write text "ls"
end tell
end tell
end tell
Not only does that not crash for me anymore, but it seems to be a bit faster (my imagination?).

Monday, May 12, 2008

Thanks, Microsoft, for SP3. I was getting tired of being happy.

UPDATE (THE FIX!!!): I decided to search Google again, and I found that several days after my support request, a new Microsoft support article (KB951830) was posted that describes the SAME problem as the old one (KB951446). However, in the new one, a HOTFIX is given. Strangely enough, that hotfix is NOT being distributed via Windows Update, and so you'll have to manually download and install it. I have informed the Microsoft support engineers (I've racked up two of them by now) about all of this.

NOTE: It might be important to note that before applying this patch, on the advice of the Microsoft support staff, I removed all registry keys that started with "$%&'()*+." (without the quotes). Evidently these keys are created by the SP3 install, but McAfee (which I was unable to disable due to network policy) wouldn't allow it. There were HUNDREDS of these keys (in each HKLM\SYSTEM\ControlSet*) and I had to delete them in SAFE MODE (to disable McAfee).

I also was asked to remove the keys (wordwrapped here):
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_CCPROXY
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_LIVEUPDATE_NOTICE_EX
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_LIVEUPDATE_NOTICE_SERVICE
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_LIVEUPDATE_NOTICE
None of those keys existed on my system.

UPDATE: After weeks of back and forth between me and Microsoft support, I'm finally in touch with an "Escalation Engineer" who is trying to get to the bottom of the problem.

Every morning, I'm still manually restarting my SharedAccess service after reconnecting my laptop. Otherwise, the Windows firewall blocks my access to the DNS running on the gateway. However, every other service gets through fine. That is, if I hard-coded my laptop's DNS, I think everything would be fine.

IF this problem is not a universal bug in SP3, it's something that was caused by installing SP3 with McAfee turned on (I can't turn it off due to network policy).

The Escalation Engineer seems to think that the problem might be fixed by installing a third party unsupported VBS script from some random blog by some Microsoft "MVP", but as far as I can tell, that fix prevents rebooting when SP3 is installed on some AMD systems. My system is an Intel Xeon system, and so I don't think it will make a difference. In fact, if I run it, it tells me that I don't need to run it because I'm on an Intel system. That's a good thing, because otherwise I'd have to uninstall SP3 and then run it. I would have been PISSED if the Escalation Engineer told me to uninstall SP3 and run the script just to find out that I had an Intel machine and the fix had NOTHING TO DO WITH IT.

Hopefully a hotfix is coming soon...
What a stupid fucking bug (KB951446) posted on May 6 with no indication that it will ever be fixed.

So, if you have a single computer (e.g., a laptop) connected to your ICS machine via a crossover cable, every time you disconnect that single computer, your ICS is going to die. The next time you reconnect, you have to restart the ICS service MANUALLY.

Remember that scene in High Fidelity where Rob explains to Barry that he just wants noise on in the background that he can ignore? That's the way I feel about Windows. I don't use it. I don't need it. I don't want it. I just have to have it for a few tedious things, and so I'd like it to sit back and do its thing without getting in my way. Right when I start forgetting that it's there, Microsoft goes ahead and does something to remind me it's still around. It's like some disease that just won't go away.

I've also heard a rumor that XP3's ICS restricts you to sharing your connection with no more than 10 other computers. That's pretty dumb too.

Thursday, July 12, 2007

Skim automatic refreshes and simpdftex

UPDATE: I've updated the script so that it works with OS/X Leopard. See comments for details.
The OS X PDF viewer Skim has the ability to automatically refresh files after they have been updated on disk. In Skim version 0.4.1 and below, this was done by polling a file every second to see if it has been changed. In Skim version 0.5 and up, this feature is implemented using kqueue events. This is a much better way of doing things. However, if the file that is open gets deleted and a new file created with the same name, events for that new file will not be received by Skim.

Unfortunately, the script simpdftex that comes with a number of LaTeX distributions (e.g., gwTeX) deletes a PDF before updating it. This means that autorefreshes won't work when regenerating a PDF from its LaTeX source using simpdftex.

So, motivated by the history in a Skim bug report, I've put together a simpdftexnodel script that fixes this problem (based on the 2007/05/07 gwTeX simpdftex). To use this file:
  • Place the script somewhere (probably in your PATH).
  • chmod the file 0755.
  • Make sure that your distillers and TeX program (or at least symlinks to them) exist in the same directory.
  • Stop using simpdftex and start using simpdftexnodel.
I hope that helps!

Friday, July 06, 2007

Two small bugs in merlin.mbs

UPDATE: I've posted a patch file as well as a patched merlin.mbs that fixes this problem. If you prefer the patch option, execute
patch < merlin-fix-nm-rvvc.patch
in the same directory as your old merlin.mbs file. Be sure you're using the 4.20 (2007/04/24) version of merlin.mbs to start with (search through the file for the ProvidesFile line.

I just sent this to Patrick W. Daly. I think I've found two small bugs in merlin.mbs (from custom-bib), the master bibliography style used to generate many common BST files. They both involve adding an nm-rvvc near some existing nm-rvv lines.

I am referring to the 4.20 version of merlin.mbs. I think this is the latest version of the MBS file.
% \ProvidesFile{merlin.mbs}[2007/04/24 4.20 (PWD, AO, DPC)]
The bugs:
  • In FUNCTION {sort.format.names} (lines 8394--8401)
    %<*!nm-init&!nm-rev&!nm-rev1&!nm-rv&!nm-rvx&!nm-rvcx&!nm-rvv>
    %<!vonx> "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}"
    %<vonx> "{ll{ }}{ ff{ }}{ jj{ }}"
    %</!nm-init&!nm-rev&!nm-rev1&!nm-rv&!nm-rvx&!nm-rvcx&!nm-rvv>
    %<*nm-init|nm-rev|nm-rev1|nm-rv|nm-rvx|nm-rvcx|nm-rvv>
    %<!vonx> "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}"
    %<vonx> "{ll{ }}{ f{ }}{ jj{ }}"
    %</nm-init|nm-rev|nm-rev1|nm-rv|nm-rvx|nm-rvcx|nm-rvv>
    I think this should be:
    %<*!nm-init&!nm-rev&!nm-rev1&!nm-rv&!nm-rvx&!nm-rvcx&!nm-rvv&!nm-rvvc>
    %<!vonx> "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}"
    %<vonx> "{ll{ }}{ ff{ }}{ jj{ }}"
    %</!nm-init&!nm-rev&!nm-rev1&!nm-rv&!nm-rvx&!nm-rvcx&!nm-rvv&!nm-rvvc>
    %<*nm-init|nm-rev|nm-rev1|nm-rv|nm-rvx|nm-rvcx|nm-rvv|nm-rvvc>
    %<!vonx> "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}"
    %<vonx> "{ll{ }}{ f{ }}{ jj{ }}"
    %</nm-init|nm-rev|nm-rev1|nm-rv|nm-rvx|nm-rvcx|nm-rvv|nm-rvvc>
    Otherwise, I think this would cause problems sorting when authors might share last names and first initial.
  • In FUNCTION {format.names.ed} (lines 4908--4929)
    %<*nm-rvv>
    "{f{.}.}" format.name$ duplicate$ empty$ 'skip$
    { tie.or.space.prefix bib.fname.font swap$ * }
    if$
    s nameptr
    "{vv~}{ll}" format.name$ bib.name.font *
    s nameptr
    "{jj}" format.name$ duplicate$ empty$ 'skip$
    { bib.fname.font " " swap$ * }
    if$
    %</nm-rvv>
    %<*!nm-rvv>
    "{ff}" format.name$ duplicate$ empty$ 'skip$
    { tie.or.space.prefix bib.fname.font swap$ * }
    if$
    s nameptr
    "{vv~}{ll}" format.name$ bib.name.font *
    s nameptr
    "{jj}" format.name$ duplicate$ empty$ 'skip$
    { bib.fname.font ", " swap$ * }
    if$
    %</!nm-rvv>
    I think this should be:
    %<*nm-rvv|nm-rvvc>
    "{f{.}.}" format.name$ duplicate$ empty$ 'skip$
    { tie.or.space.prefix bib.fname.font swap$ * }
    if$
    s nameptr
    "{vv~}{ll}" format.name$ bib.name.font *
    s nameptr
    "{jj}" format.name$ duplicate$ empty$ 'skip$
    { bib.fname.font " " swap$ * }
    if$
    %</nm-rvv|nm-rvvc>
    %<*!nm-rvv&!nm-rvvc>
    "{ff}" format.name$ duplicate$ empty$ 'skip$
    { tie.or.space.prefix bib.fname.font swap$ * }
    if$
    s nameptr
    "{vv~}{ll}" format.name$ bib.name.font *
    s nameptr
    "{jj}" format.name$ duplicate$ empty$ 'skip$
    { bib.fname.font ", " swap$ * }
    if$
    %</!nm-rvv&!nm-rvvc>
    That actually looks like it will give a formatting error on output!
So hopefully those'll get fixed, right? Am I missing something? Am I wrong?

Thursday, July 05, 2007

Bees and dumb Michigan people...

NPR : Mich. Home Becomes Beehive
Morning Edition, July 5, 2007 - In Michigan, Sarah Spitler and her husband noticed a few honey bees going in and out of a hole in their house. Given the bee shortage they decided to leave the hive alone. Now with tens of thousands of bees in the walls and an odor in their home, the Spitlers have called the exterminator. But here's the problem, once the bees are dead their waxy comb will melt and gallons of honey will leak from the walls.

My Honey Bee Poster

Thursday, June 21, 2007

authorindex bug fix on Windows (API error and PATH separator)

This is from a USENET news thread. I repost it here so that it gets indexed by more search engines.
This is a summary of the bug and resolution listed in MiKTeX bug #1739147:

This bug is not limited to MiKTeX. It is a general authorindex problem that can occur on any Windows machine.


When authorindex runs on a NETWORK drive (and other times?) this error occurs:

=====
bibtex: Windows API error 161: The specified path is invalid.
BibTeX error. Aborting leaving all temporary files _autidx_.*
=====

This error is a Windows specific problem in the "authorindex" Perl script. The resolution, by Christian Schenk:

=====
Date: 2007-06-21 13:26
Sender: csc (Christian Schenk)
Logged In: YES
user_id=67066
Originator: NO

Thank you. The bug is in the authorindex.pl script on lines 215 and 276:
the Unix path separator (:) is used when the environment variable
BSTINPIUTS/BIBINPUTS is set. This does not work under Windows. Please
replace ".:" with ".;" on both lines.
=====

In MiKTeX, this script is located at:

\Program Files\MiKTeX 2.6\scripts\perl\authorindex\authorindex.pl


Eventually, authorindex will need to be modified so that ";" is used as the PATH separator for Windows and ":" in UNIX. Meanwhile, those getting the error above should manually make this change.

--Ted