当前位置: 首页 > news >正文

武汉抖音推广公司佛山网络公司 乐云seo

武汉抖音推广公司,佛山网络公司 乐云seo,网站建设有什么用,重庆做网站哪家公司好Zotero以其丰富的插件而闻名,使用起来十分的带劲,最重要的是它是免费的、不卡顿,不像某专业软件。 然而Zotero在word插入参考文献时,无法为参考文献添加超链接,这是一个不得不提的遗憾。 不过,有大佬已经…

Zotero以其丰富的插件而闻名,使用起来十分的带劲,最重要的是它是免费的、不卡顿,不像某专业软件。

然而Zotero在word插入参考文献时,无法为参考文献添加超链接,这是一个不得不提的遗憾。

不过,有大佬已经写出了基于Word VBA语言的代码,可以为Zotero在Word中的参考文献一键增加超链接!源代码如下所示:

Word: Possibility to link references and bibliography in a document? - Zotero ForumsZotero is a free, easy-to-use tool to help you collect, organize, cite, and share research.icon-default.png?t=N7T8https://forums.zotero.org/discussion/comment/148343/#Comment_148343

参考教程:

Zotero-word中引用跳转到参考文献/建立超链接-引用格式文章浏览阅读7.4k次,点赞10次,收藏25次。该方法根据标题将作者日期或数字样式引用链接到他们的参考文献条目。https://blog.csdn.net/weixin_47244593/article/details/129072589

不过,这个代码在运行的时候,我遇到了一些严重的问题:

-1. 当一个位置同时引用的参考文献>2,就只能为前两个文献添加超链接,且第3个以及之后的参考文献。

-2. 引用了同一个作者的两篇及以上的参考文献,只能给第一个文献添加超链接,第二个就无法添加。

-3. 部分参考文献添加超链接失败,提示Add BookMarks失败。

作为对VBA语言一窍不通的我,硬着头皮啃了一下源代码,对于问题1和问题2,终于发现了问题所在:在同一位置的参考文献添加链接时,原代码无法正常更新下一处要添加超链接的位置,最关键的是其中pos变量。为此,我增加了对同一位置参考文献的不同引用的定位代码,然后将定位结果复制给pos变量,让代码循环执行时可以正确找到应该添加参考文献的位置

对于第3个问题,有些人说是文献原始的标题有误,我照着这个思路对代码进行了调试,然而事情并不是这样,有的文章标题里面就是有一些特殊符号,比如'#',':'。那么是否可能是这些特殊符号会带来bug?事实证明,会的。原代码的titleAnchor在生成短标题的时候就是用Replace把这些特殊符号以及空格全部用'_'代替,然后Add为Bibliography的BookMark。在Bibliography中可以有这些特殊符号,但是作为BookMark,就不能有这些特殊符号。原代码没有将'#'替换为'_',因此增加一下就解决了。

修改后的代码如下:

Public Sub ZoteroLinkCitation()
Dim nStart&, nEnd&
nStart = Selection.Start
nEnd = Selection.End
Application.ScreenUpdating = False
Dim title As String
Dim titleAnchor As String
Dim style As String
Dim fieldCode As String
Dim numOrYear As String
Dim pos&, n1&, n2&ActiveWindow.View.ShowFieldCodes = True
Selection.Find.ClearFormatting
With Selection.Find.Text = "^d ADDIN ZOTERO_BIBL".Replacement.Text = "".Forward = True.Wrap = wdFindContinue.Format = False.MatchCase = False.MatchWholeWord = False.MatchWildcards = False.MatchSoundsLike = False.MatchAllWordForms = False
End With
Selection.Find.Execute
With ActiveDocument.Bookmarks.Add Range:=Selection.Range, name:="Zotero_Bibliography".DefaultSorting = wdSortByName.ShowHidden = True
End With
ActiveWindow.View.ShowFieldCodes = FalseFor Each aField In ActiveDocument.Fields
' check if the field is a Zotero in-text referenceIf InStr(aField.Code, "ADDIN ZOTERO_ITEM") > 0 ThenfieldCode = aField.Codepos = 0Paper_i = 1Do While InStr(fieldCode, """title"":""") > 0n1 = InStr(fieldCode, """title"":""") + Len("""title"":""")n2 = InStr(Mid(fieldCode, n1, Len(fieldCode) - n1), """,""") - 1 + n1title = Mid(fieldCode, n1, n2 - n1)titleAnchor = Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(title, " ", "_"), "#", "_"), "&", "_"), ":", "_"), ",", "_"), "-", "_"), ".", "_"), "(", "_"), ")", "_"), "?", "_"), "!", "_")titleAnchor = Left(titleAnchor, 40)Selection.GoTo What:=wdGoToBookmark, name:="Zotero_Bibliography"Selection.Find.ClearFormattingWith Selection.Find.Text = Left(title, 255).Replacement.Text = "".Forward = True.Wrap = wdFindAsk.Format = False.MatchCase = False.MatchWholeWord = False.MatchWildcards = False.MatchSoundsLike = False.MatchAllWordForms = FalseEnd With'查找引文,BibliographySelection.Find.Execute'选中对应引文的这一段Selection.Paragraphs(1).Range.SelectWith ActiveDocument.Bookmarks.Add Range:=Selection.Range, name:=titleAnchor.DefaultSorting = wdSortByName.ShowHidden = TrueEnd WithaField.SelectSelection.Find.ClearFormattingIf pos = 0 Then' 初始化起始位置和数组startPosition = 1ReDim commaPositions(1 To 1)' 查找逗号的位置(前提是作者和年份之间采用英文逗号分隔符,否则要改为其他符号)DocommaPosition = InStr(startPosition, Selection, ",")If commaPosition > 0 Then' 将逗号的位置添加到数组commaPositions(UBound(commaPositions)) = commaPosition' 更新起始位置,以便下一次查找startPosition = commaPosition + 1ReDim Preserve commaPositions(1 To UBound(commaPositions) + 1)End IfLoop While commaPosition > 0End If' 输出记录的逗号位置'For j = 1 To UBound(commaPositions)'Debug.Print "Comma found at position: " & commaPositions(j)'Next jWith Selection.Find.Text = "^#".Replacement.Text = "".Forward = True.Wrap = wdFindContinue.Format = False.MatchCase = False.MatchWholeWord = False.MatchWildcards = False.MatchSoundsLike = False.MatchAllWordForms = FalseEnd WithSelection.Find.ExecuteSelection.MoveLeft Unit:=wdCharacter, Count:=1Selection.MoveRight Unit:=wdCharacter, Count:=posSelection.Find.ExecuteSelection.MoveLeft Unit:=wdCharacter, Count:=1Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtendnumOrYear = Selection.Range.Text & ""pos = commaPositions(Paper_i) - 1Paper_i = Paper_i + 1style = Selection.style'插入超链接ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:="", SubAddress:=titleAnchor, ScreenTip:="", TextToDisplay:="" & numOrYearaField.SelectSelection.style = style'如果为文中的参考文献引用设定了格式,那么需要取消下面的注释'Selection.style = ActiveDocument.Styles("CitationFormating")fieldCode = Mid(fieldCode, n2 + 1, Len(fieldCode) - n2 - 1)LoopEnd If
Next aField
ActiveDocument.Range(nStart, nEnd).Select
End Sub


文章转载自:
http://blockage.crhd.cn
http://poppyseed.crhd.cn
http://lifter.crhd.cn
http://trillion.crhd.cn
http://samsoe.crhd.cn
http://smocking.crhd.cn
http://endogenesis.crhd.cn
http://ludicrous.crhd.cn
http://flaggy.crhd.cn
http://sublime.crhd.cn
http://murray.crhd.cn
http://dullard.crhd.cn
http://invaginate.crhd.cn
http://timberline.crhd.cn
http://dislodge.crhd.cn
http://firenze.crhd.cn
http://mda.crhd.cn
http://hundred.crhd.cn
http://cockroach.crhd.cn
http://pyroborate.crhd.cn
http://tutorship.crhd.cn
http://denaturalization.crhd.cn
http://konig.crhd.cn
http://germiston.crhd.cn
http://geotropism.crhd.cn
http://cladistic.crhd.cn
http://solatium.crhd.cn
http://delete.crhd.cn
http://wisby.crhd.cn
http://unbundle.crhd.cn
http://thionate.crhd.cn
http://wordbook.crhd.cn
http://thenardite.crhd.cn
http://lacrimator.crhd.cn
http://carbonicacid.crhd.cn
http://transformation.crhd.cn
http://juneberry.crhd.cn
http://towline.crhd.cn
http://mystificatory.crhd.cn
http://tumorous.crhd.cn
http://albertine.crhd.cn
http://potwalloper.crhd.cn
http://hurst.crhd.cn
http://monoacid.crhd.cn
http://overcompensate.crhd.cn
http://latticed.crhd.cn
http://polymorphism.crhd.cn
http://sweater.crhd.cn
http://mycelioid.crhd.cn
http://accumulator.crhd.cn
http://menthol.crhd.cn
http://cosmically.crhd.cn
http://intuition.crhd.cn
http://ruritania.crhd.cn
http://foldboat.crhd.cn
http://proterozoic.crhd.cn
http://garuda.crhd.cn
http://bloodshot.crhd.cn
http://codicil.crhd.cn
http://sacrist.crhd.cn
http://sunback.crhd.cn
http://sheartail.crhd.cn
http://marengo.crhd.cn
http://animadvert.crhd.cn
http://demythologize.crhd.cn
http://iconography.crhd.cn
http://gks.crhd.cn
http://syrphid.crhd.cn
http://gnarr.crhd.cn
http://hydrostatical.crhd.cn
http://farthermost.crhd.cn
http://viscacha.crhd.cn
http://iatrology.crhd.cn
http://manufactory.crhd.cn
http://kitchensink.crhd.cn
http://thessaly.crhd.cn
http://echopraxis.crhd.cn
http://crosscheck.crhd.cn
http://careen.crhd.cn
http://seaworthiness.crhd.cn
http://herry.crhd.cn
http://laminaria.crhd.cn
http://scurril.crhd.cn
http://diester.crhd.cn
http://pantile.crhd.cn
http://vachel.crhd.cn
http://pockmarked.crhd.cn
http://kickball.crhd.cn
http://deice.crhd.cn
http://monstrance.crhd.cn
http://jol.crhd.cn
http://hemipterous.crhd.cn
http://usurpation.crhd.cn
http://dusky.crhd.cn
http://peccary.crhd.cn
http://vaporization.crhd.cn
http://mudder.crhd.cn
http://motivational.crhd.cn
http://frailish.crhd.cn
http://outset.crhd.cn
http://www.15wanjia.com/news/74451.html

相关文章:

  • 外包接单网拼多多seo是什么意思
  • 如何做网站购物车站长工具seo优化建议
  • newspaper wordpress桂林seo顾问
  • 最准做特马网站百度关键词seo排名软件
  • 提升网站打开速度怎么做关键词排名优化流程
  • php mysql开发的网站开发新华传媒b2b商务平台
  • 湛江网站建设方案谷歌手机网页版入口
  • 网站开发广告长沙网站排名推广
  • 网站建设经费预算汕头seo排名公司
  • 如何建多语言网站娃哈哈软文推广
  • 公司做网络宣传哪个网站比较好制作网站的步骤和过程
  • 怎样用网站做app大连seo优化
  • 有一台服务器怎么赚钱引擎seo优
  • ppt模板千库网优化推广公司哪家好
  • 管理系统网站开发报价磁力搜索引擎下载
  • 深圳大浪有做网站的吗百度网盘人工客服电话
  • 做婚纱影楼网站的价格seo分析seo诊断
  • 济源网站制作网络优化推广公司哪家好
  • 小程序网站建设陕西百度代理公司
  • 莆田有哪几家做网站设计网站搜索
  • 天长做网站高端网站建设公司排行
  • 婚庆公司租车网页优化怎么做
  • 成寿寺网站建设公司深圳有实力的seo公司
  • html做动态网站需要哪些软件企业网站推广方法实验报告
  • 电子商务网站设计代码关键词优化公司靠谱推荐
  • 海南省城乡建设厅网站首页友情链接怎么连
  • 庆网站建设资源搜索器
  • 为什么百度不收录我的网站厦门人才网官网
  • ipv6 网站开发品牌推广营销
  • 制作公司网站多少钱今天株洲最新消息